2008-11-10 2 views
2

У меня есть небольшое небольшое приложение WPF с TextBox и элементом управления WebBrowser. Когда я ввожу текст в TextBox, WebBrowser обновляет его содержимое.Как отключить шум щелчка элемента управления WPF WebBrowser?

Но при каждом нажатии клавиши, когда WebBrowser обновляется, он делает звук щелчка. Как отключить звук щелчка элемента управления WebBrowser?

WPF TextBox and WebBrowser controls http://img411.imageshack.us/img411/2296/appbz9.jpg

Мой XAML ...

<TextBox Name="MyTextBox" 
     ... 
     TextChanged="MyTextBox_TextChanged" 
     TextWrapping="Wrap" 
     AcceptsReturn="True" 
     VerticalScrollBarVisibility="Visible" /> 
<WebBrowser Name="MyWebBrowser" ... /> 

Мой Visual Basic код ...

 
Private Sub MyTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.Windows.Controls.TextChangedEventArgs) 
    If Not MyTextBox.Text = String.Empty Then 
     MyWebBrowser.NavigateToString(MyTextBox.Text) 
    Else 
     MyWebBrowser.Source = Nothing 
    End If 
End Sub 

ответ

2

Этот клик является навигацией, делая это без нее не должно появляться.

Я бы ввел свой тег div в пустой HTML, загруженный в веб-браузер, и в момент обновления я бы представил текст текстового поля в свойстве innerHTML div. Без навигации.

Visual Basic код ...

 
Private Sub Window1_Loaded(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded 
    MyWebBrowser.NavigateToString("<html><body><div id=""MyDiv""></div></body><html>") 
End Sub 

Private Sub MyTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.Windows.Controls.TextChangedEventArgs) 
    MyWebBrowser.Document.GetElementById("MyDiv").InnerHtml = MyTextBox.Text 
End Sub 
+0

Этот метод работает, но тогда я не могу манипулировать теги HTML, HEAD или BODY. – 2008-11-10 16:30:02

2

Ну это с помощью IE7/8 контейнера, если я не ошибаюсь, так это может потребоваться через Windows Sounds.

Смежные вопросы