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