
先定义Button按钮并绑定事件。
public void test()
{
Button btn = new Button();
btn.Click += Btn_Click;
} private void Btn_Click(object sender, RoutedEventArgs e)
{
Console.WriteLine("点击了按钮!");
}
已经定义好了事件后,不点击按钮,如何靠代码动态触发按钮的点击事件?
方法一:
ButtonAutomationPeer peer = new ButtonAutomationPeer(someButton);
IInvokeProvider invokeProv = peer.GetPattern(PatternInterface.Invoke) as IInvokeProvider;
invokeProv.Invoke();
方法二:更优雅的方式
someButton.RaiseEvent(new RoutedEventArgs(Button.ClickEvent));
参考: