我有一个包含带有eventtriggers的usercontrols的stackpanel。这些eventtriggers用于选择一个用户控件,工作正常。
现在,我希望通过单击usercontrol外部的stackpanel来取消选择所选的usercontrol。这是我的问题发生在这里。 我曾尝试将一个eventtrigger添加到stackpanel,但是只有在单击stackpanel中的一个用户控件时才点击stackpanel,然后再覆盖usercontrol自己的eventtrigger,它就无法工作。
<StackPanel Name="DisplayArea">
<ItemsControl ItemsSource="{Binding Nodes}" />
<ItemsControl ItemsSource="{Binding Edges}" />
<StackPanel.Triggers>
<EventTrigger RoutedEvent="StackPanel.Loaded">
</EventTrigger>
</StackPanel.Triggers>
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseDown">
<cmd:EventToCommand Command="{Binding DataContext.MouseDownPanelCommand, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}}}" PassEventArgsToCommand="True"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</StackPanel>
我知道这不是正确的做法,但我无法弄清楚如何做到这一点。 希望你们能理解我的问题。