1

テキストボックスをクリックしながらイベントを発生させるにはどうすればよいですか?C#でWPFのイベントの参照を見つけるのに問題があります。

アイデアは、クリックされたときにテキストボックスにイベントを発生させることです。たとえば、テキストボックスをクリックするとすぐに、メモ帳が実行されたとします。

 private void textBox1_TextChanged(object sender, TextChangedEventArgs e)
 {
     hello = Process.Start("notepad");   
 }
 private void Click(object sender, MouseButtonEventArgs e)
 {    
     /* if (e.LeftButton == MouseButtonState.Pressed)
     {
         hello = Process.Start(@"notepad");                
     }*/           
 }
4

2 に答える 2

3

テキスト イベントの場合、TextInput イベントを使用し、入力された文字を e.Text から読み取ります。

private void yourTextBox_TextInput(object sender, TextCompositionEventArgs e)
{  
    if (e.Text == "K")
    {
    }
}

マウス イベントの場合は、MouseDown/MouseUp を使用します

MouseDown/MouseUp が TextBox で機能しないことがあります。その場合は、次のものを使用してください。

http://msdn.microsoft.com/en-us/library/system.windows.uielement.previewmouseup.aspx

于 2012-06-18T02:25:51.793 に答える
0

テキストボックスをクリックすると、MouseLeftButtonDown イベントが発生する可能性があります。このイベントは、デフォルトではテキスト ボックスでは発生しません。UIElement.AddHandler() を使用する必要があります。

例:

XAML:

<Textbox X:Name="Name_Textbox" MouseLeftButtonDown="Name_Textbox_MouseLeftButtonDown"/>

クラスコンストラクターで:

TextBox_Name.AddHandler(FrameworkElement.MouseLeftButtonDownEvent, new MouseButtonEventHandler("Name_Textbox_MouseLeftButtonDown"), true);

クラス ファイルにイベントを追加します。

private void Name_Textbox_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)  
{
   // Your logic on textbox click
}
于 2013-02-18T04:24:31.327 に答える