Style TargetType="DataGridRow"> <Setter Property="AllowDrop" Value="True"></Setter> <EventSetter Property="PreviewMouseLeftButtonDown" Handle="DataGridRow_PreviewMouseLeftButtonDown"></EventSetter> <EventSetter Property="PreviewMouseLeftButtonDown" Handle="DataGridRow_PreviewMouseMove"></ EventSetter> <EventSetter Property="PreviewMouseLeftButtonDown" Handle="DataGridRow_Drop"></EventSetter
Style TargetType="DataGridRow"> <Setter Property="AllowDrop" Value="True"></Setter> <EventSetter Property="PreviewMouseLeftButtonDown" Handle="DataGridRow_PreviewMouseLeftButtonDown"></EventSetter> <EventSetter Property="PreviewMouseLeftButtonDown" Handle="DataGridRow_PreviewMouseMove"></EventSetter > <EventSetter Property="PreviewMouseLeftButtonDown" Handle="DataGridRow_Drop"></EventSetter>
也可以给样式中添加事件 例如<EventSetter Event="TextBlock.MouseEnter" Handler="element_MouseEnter"></EventSetter>
Property="Height" Value="22"/> 8: <Setter Property="Width" Value="60"/> 9: <EventSetter 156,144,286,145" /> 23: </Grid> 24: </Window> Style中定义了资源SolidColorBrush,定义了属性Height和Width,以及使用了EventSetter Trigger Style使用了Setter和EventSetter来分别设置控件的属性和事件处理,Setter这个单词的含义是设置。 这里比较特殊的是EventSetter,EventSetter使用的是RoutedEvent,如果两个Style的EventSetter对同一个RoutedEvent进行了设置,两个都会注册到RoutedEvent Button}}"> 17: <Setter Property="Background" Value="Blue"/> 18: <EventSetter
来看看代码: private void EventSetter_PreviewTouchDown(object sender, TouchEventArgs e) { // 真实触摸时会触发 PreviewTouchDown 点击弹窗取消后在空白处点击多次会误触表格)则不会(因为那个只触发鼠标事件); _vm.IsRealTouch = true; } /* 注意:触摸事件之后还会触发鼠标事件 */ private void EventSetter_PreviewMouseDown