以下の内容はhttps://devlights.hatenablog.com/entry/2014/12/25/080259より取得しました。


WPFでWinFormsのPerformClickみたいな動作を実施

WPF 4.5 UNLEASHEDに載っていたので、忘れないうちにメモメモ。

WinFormsにあるPerformClickみたいな処理をする方法です。

WPFで使うかどうかは微妙ですが。。。

以下のようにすると、コード側からボタンクリックを実施できます。

      //
      // WinFormsでいうPerformClickを実行.
      //   System.Windows.Automation.Peers
      //   System.Windows.Automation.Provider
      // 名前空間が必要。
      //
      // IInvokeProviderインターフェースは、UIAutomationProvider.dll
      // の参照設定が追加で必要となる。
      //
      var peer     = new ButtonAutomationPeer(theButtonObject);
      var provider = peer.GetPattern(PatternInterface.Invoke) as IInvokeProvider;
 
      provider.Invoke();

コメントにも記述しているように

System.Windows.Automation.Peers
System.Windows.Automation.Provider

名前空間のクラスが必要となり、UIAutomationProvider.dll の参照が別途必要になります。

以下、サンプルです。

WPFでWinFormsのButtonのPerformClickと同じようなことを実施




以上の内容はhttps://devlights.hatenablog.com/entry/2014/12/25/080259より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14