2016-11-04 3 views
0

私はWebBrowserコントロールを使用してメールの本文コンテンツを表示/編集しています。これらのすべては私がUserControlで行ったものです。UserControlでWebBrowserコントロールのtextchangeイベントを作成するにはどうすればよいですか?

私はデザイナーのイベントをお探しでしたが、WebBrowserにはWebBrowser.TextChangeメソッドがありません。私はそれにユーザーが入力した文字の数を検出する方法を書いてみたいです。 (ONLY TEXT、画像無視など)

答えて

1

System.Windows.Controls.WebBrowserはTextChangedイベントを持たないため、テキストプロパティはありません。本当にこれをやりたければ、KeyDwonまたはKeyUpイベントを試してみてください。

コメントは長いコードを貼り付けることができないので、ここにコードを追加します。

<UserControl x:Class="WpfApplication2.UserControl1" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
     mc:Ignorable="d" 
     d:DesignHeight="300" d:DesignWidth="300"> 
<Grid> 
    <WebBrowser Name="wb" TextInput="wb_TextInput" KeyDown="wb_KeyDown" Visibility="Visible"/> 
</Grid> 
</UserControl> 


public partial class UserControl1 : UserControl 
{ 
    public UserControl1() 
    { 
     InitializeComponent(); 
     //wb.Navigate("http://www.baidu.com"); 
     wb.Navigate("http://www.bing.com"); 
    } 

    private void wb_TextInput(object sender, TextCompositionEventArgs e) 
    { 
     //not work 
    } 

    private void wb_KeyDown(object sender, KeyEventArgs e) 
    { 
     MessageBox.Show(e.Key.ToString()); 
     e.Handled = false; 
    } 
} 
+0

私はそれをしましたが、私のためには機能しません。しかし、私がEnterイベント(フォーカス)でやったときはうまくいった。 –

+0

私は 'KeyDown'イベントをテストして、MessageBoxと' http:// www.baidu.com'を使用しています。 – chengzi

+0

コードを表示してください。 –

関連する問題