0

以下のコードでは、ボタンの Click イベントをシミュレートしようとしていますBrowse

private void TextBox_MouseDown(object sender, RoutedEventArgs e)
{
    this.Browse.RaiseEvent(new RoutedEventArgs(ButtonBase.ClickEvent));
}

これは私が得ているエラーです:

'System.Windows.Forms.ButtonBase' には 'ClickEvent' の定義が含まれていません

クリックイベントを発生させるにはどうすればよいですか?

このコードの目的を疑問視する人がいるようです。ここで入手しましたhttps://stackoverflow.com/a/733974/1477388、単に機能させようとしています。

4

3 に答える 3

5

WPF アプリケーションを使用している

this.Browse.RaiseEvent(new RoutedEventArgs(ButtonBase.ClickEvent));

(ルーティング イベントは winforms ではなく WPF の一部です)、しかし、間違った名前空間を参照しました

' System.Windows.Forms .ButtonBase' には 'ClickEvent' の定義が含まれていません

クラスの先頭に移動し、次を削除します

using System.Windows.Forms;

そしてそれを

using System.Windows.Controls.Primitives

ブラム。

于 2013-08-13T18:45:15.337 に答える
2
  1. でクリックが発生することはありませんMouseDown
  2. を に入れるか、TextBlockButton使用しHyperlinkます。
  3. それ以外の場合、そのコードは問題ないように見えますが、usingWPF ではなく間違った名前空間 (WinForms) を使用しています。あなたがしたい:System.Windows.Controls.Primitives
于 2013-08-13T18:40:37.833 に答える
0
  1. Click イベントで呼び出されるコードをメソッドに配置します。
  2. Click イベントでこのメソッドを呼び出します
  3. MouseDown イベントでこのメソッドを呼び出します
于 2013-08-13T18:41:47.047 に答える