2010-11-23 26 views
4

J'ai un élément Frame dans une fenêtre WPF et tout le contenu de mon application est chargé en utilisant Frame.Navigate(). Cependant, lors de la navigation vers une nouvelle page, il y a ce son qui est joué par défaut, c'est le même son qui est joué dans Internet Explorer. Y at-il un moyen que je peux tourner de ce son de l'application? Je ne veux pas désactiver le réglage dans le panneau de contrôle au niveau du système d'exploitation. Merci. Editer: Je suppose que le seul moyen est de modifier le son au niveau du système d'exploitation, ce qui peut être fait dans le registre. C'est une solution acceptable pour moi.Désactiver le son de la page de navigation dans WPF Contrôle d'image

http://social.msdn.microsoft.com/forums/en-us/vbgeneral/thread/843677F4-8F0B-46CB-986C-92E8042D0707

Répondre

3

Il semble qu'il n'y a pas d'autres moyens, juste pour désactiver dans les paramètres de Windows comme décrit here

+0

http : //social.msdn.microsoft.com/forums/en-us/vbgeneral/thread/843677F4-8F0B-46CB-986C-92E80 42D0707 –

1

Dennis a souligné une solution ici How to disable click sound in WebBrowser Control mais dans mon cas ne fonctionnait pas. Donc, j'ai modifié le code ci-dessous et je travaille maintenant tout va bien:

Utilisation

URLSecurityZoneAPI.InternetSetFeatureEnabled(URLSecurityZoneAPI.InternetFeaturelist.DISABLE_NAVIGATION_SOUNDS, URLSecurityZoneAPI.SetFeatureOn.PROCESS, false); 

URLSecurityZoneAPI.vb

''' Enables or disables a specified Internet Explorer feature control 
''' Minimum availability: Internet Explorer 6.0 
''' Minimum operating systems: Windows XP SP2 
Imports System.Runtime.InteropServices 
Imports System.Security 
Imports System 

Friend Class URLSecurityZoneAPI 

    ''' <summary> 
    ''' Specifies where to set the feature control value 
    ''' http://msdn.microsoft.com/en-us/library/ms537168%28VS.85%29.aspx 
    ''' </summary> 
    Public Enum SetFeatureOn As Integer 
     THREAD = &H1 
     PROCESS = &H2 
     REGISTRY = &H4 
     THREAD_LOCALMACHINE = &H8 
     THREAD_INTRANET = &H10 
     THREAD_TRUSTED = &H20 
     THREAD_INTERNET = &H40 
     THREAD_RESTRICTED = &H80 
    End Enum 

    ''' <summary> 
    ''' InternetFeaturelist 
    ''' http://msdn.microsoft.com/en-us/library/ms537169%28v=VS.85%29.aspx 
    ''' </summary> 
    Public Enum InternetFeaturelist As Integer 
     OBJECT_CACHING = 0 
     ZONE_ELEVATION = 1 
     MIME_HANDLING = 2 
     MIME_SNIFFING = 3 
     WINDOW_RESTRICTIONS = 4 
     WEBOC_POPUPMANAGEMENT = 5 
     BEHAVIORS = 6 
     DISABLE_MK_PROTOCOL = 7 
     LOCALMACHINE_LOCKDOWN = 8 
     SECURITYBAND = 9 
     RESTRICT_ACTIVEXINSTALL = 10 
     VALIDATE_NAVIGATE_URL = 11 
     RESTRICT_FILEDOWNLOAD = 12 
     ADDON_MANAGEMENT = 13 
     PROTOCOL_LOCKDOWN = 14 
     HTTP_USERNAME_PASSWORD_DISABLE = 15 
     SAFE_BINDTOOBJECT = 16 
     UNC_SAVEDFILECHECK = 17 
     GET_URL_DOM_FILEPATH_UNENCODED = 18 
     TABBED_BROWSING = 19 
     SSLUX = 20 
     DISABLE_NAVIGATION_SOUNDS = 21 
     DISABLE_LEGACY_COMPRESSION = 22 
     FORCE_ADDR_AND_STATUS = 23 
     XMLHTTP = 24 
     DISABLE_TELNET_PROTOCOL = 25 
     FEEDS = 26 
     BLOCK_INPUT_PROMPTS = 27 
     MAX = 28 
    End Enum 


    ''' <summary> 
    ''' Set the internet feature enabled/disabled 
    ''' </summary> 
    ''' <param name="feature">The feature from <c>InternetFeaturelist</c></param> 
    ''' <param name="target">The target from <c>SetFeatureOn</c></param> 
    ''' <param name="enabled">enabled the feature?</param> 
    ''' <returns><c>true</c> if [is internet set feature enabled] [the specified feature]; otherwise, <c>false</c>.</returns> 
    Public Shared Function InternetSetFeatureEnabled(feature As InternetFeaturelist, target As SetFeatureOn, enabled As Boolean) As Boolean 
     Return (SafeNativeMethods.CoInternetSetFeatureEnabled(CInt(feature), CInt(target), enabled) = 0) 
    End Function 

    ''' <summary> 
    ''' Determines whether the internet feature is enabled. 
    ''' </summary> 
    ''' <param name="feature">The feature from <c>InternetFeaturelist</c></param> 
    ''' <param name="target">The target from <c>SetFeatureOn</c></param> 
    ''' <returns><c>true</c> if the internet feature is enabled; otherwise, <c>false</c>. 
    ''' </returns> 
    Public Shared Function IsInternetSetFeatureEnabled(feature As InternetFeaturelist, target As SetFeatureOn) As Boolean 
     Return (SafeNativeMethods.CoInternetIsFeatureEnabled(CInt(feature), CInt(target)) = 0) 
    End Function 

End Class 

<SuppressUnmanagedCodeSecurityAttribute()> 
Friend NotInheritable Class SafeNativeMethods 

    Private Sub New() 
    End Sub 

    ''' <summary> 
    ''' Enables or disables a specified feature control. 
    ''' http://msdn.microsoft.com/en-us/library/ms537168%28VS.85%29.aspx 
    ''' </summary>    
    <SecurityCritical, SuppressUnmanagedCodeSecurity, DllImport("urlmon.dll", ExactSpelling:=True)> 
    Friend Shared Function CoInternetSetFeatureEnabled(featureEntry As Integer, <MarshalAs(UnmanagedType.U4)> dwFlags As Integer, fEnable As Boolean) As <MarshalAs(UnmanagedType.[Error])> Integer 
    End Function 

    ''' <summary> 
    ''' Determines whether the specified feature control is enabled. 
    ''' http://msdn.microsoft.com/en-us/library/ms537164%28v=VS.85%29.aspx 
    ''' </summary> 
    <SecurityCritical, SuppressUnmanagedCodeSecurity, DllImport("urlmon.dll", ExactSpelling:=True)> 
    Friend Shared Function CoInternetIsFeatureEnabled(featureEntry As Integer, dwFlags As Integer) As <MarshalAs(UnmanagedType.[Error])> Integer 
    End Function 

End Class 

Notez l'ajout de classe nommée SafeNativeMethods