C# 在多点触控应用中同时按下多个按钮
我的WPF应用程序有多个按钮,支持多点触摸,但不将按下的样式应用于按下的按钮。更具体地说:C# 在多点触控应用中同时按下多个按钮,c#,wpf,multi-touch,C#,Wpf,Multi Touch,我的WPF应用程序有多个按钮,支持多点触摸,但不将按下的样式应用于按下的按钮。更具体地说: 我触摸第一个按钮,隧道正确发生(我已将IsPressed button属性绑定到应用样式的触发器) 我在没有释放第一个按钮的情况下触摸第二个按钮,后面的代码会正确捕获引发的事件,但在这种情况下,模板不会被应用 注意:这些按钮是同一类的两个实例,一次按下一次可以正常工作。代码非常简单: <Button Focusable="False" Style="{DynamicResource Button
- 我触摸第一个按钮,隧道正确发生(我已将IsPressed button属性绑定到应用样式的触发器)
- 我在没有释放第一个按钮的情况下触摸第二个按钮,后面的代码会正确捕获引发的事件,但在这种情况下,模板不会被应用
<Button Focusable="False" Style="{DynamicResource ButtonStyle}" Grid.Column="{Binding GridColumn}" Grid.Row="{Binding GridRow}" Margin="{Binding Margin}" Width="{Binding Width}" Height="{Binding Height}" Visibility="{Binding Visibility}" Stylus.IsPressAndHoldEnabled="False" Stylus.IsFlicksEnabled="False" >
<i:Interaction.Triggers>
<i:EventTrigger EventName="TouchDown">
<cmd:EventToCommand Command="{Binding ButtonDownCommand}" PassEventArgsToCommand="True"/>
</i:EventTrigger>
<i:EventTrigger EventName="TouchUp">
<cmd:EventToCommand Command="{Binding ButtonUpCommand}" PassEventArgsToCommand="True"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
以及应用的样式:
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding IsPressed, RelativeSource={RelativeSource Self}}" Value="True" />
</MultiDataTrigger.Conditions>
<Setter TargetName="glass" Property="Effect" Value="{StaticResource PressedShadow}"/>
<Setter TargetName="glass" Property="Margin" Value="20"/>
<Setter TargetName="blink" Property="Effect" Value="{StaticResource PressedShadow}"/>
<Setter TargetName="blink" Property="Margin" Value="20"/>
</MultiDataTrigger>
想法