WPF中C#代码触发鼠标点击事件
1.如下代码;
1 <Button x:Name="btnTest" Click="btnTest_Click"> 2 <Button.Triggers> 3 <EventTrigger RoutedEvent="Button.Click"> 4 <BeginStoryboard> 5 <!--要执行的动画代码--> 6 </BeginStoryboard> 7 </EventTrigger> 8 </Button.Triggers> 9 </Button>
在Button, btnTest按钮上既绑定了点击事件的处理方法(btnTest_Click()),也添加了路由事件的触发器(点击时执行动画),
意思是:当用户点击btnTest按钮时,同时执行btnTest_Click()方法,也触发了触发器,然后执行动画;
当如果是要实现在C#代码中模拟点击了btnTest呢,直接运行btnTest_Click()方法,结果是只执行方法中的内容,而不执行动画,
这明显不是我们想要的结果!!!!
原来在WPF中如果要在C#代码中实现这样的功能,应该使用 RaiseEvent()方法,
具体代码如下:
btnTest.RaiseEvent(new RoutedEventArgs(Button.ClickEvent));
1 btnTest.RaiseEvent(new RoutedEventArgs(Button.ClickEvent));