让受阻碍的元素接受鼠标按下

时间:2014-05-26 20:14:45

标签: c# wpf listbox

我在为WPF用户控件获取正确行为时遇到了一些问题。 我使用列表框在像这样定义的datatemplate中显示数据绑定ObservableCollection的元素

<DataTemplate DataType="{x:Type ToolNodeVM:NodeViewModel}">
    <Thumb>
        <Thumb.Template>
            <ControlTemplate>
                <Border Width="160" Margin="0,0,10,0" ClipToBounds="False">
                    <TextBlock HorizontalAlignment="Center" Text="{Binding NodeName}" Foreground="White"/>
                </Border>
            </ControlTemplate>
        </Thumb.Template>
        <i:Interaction.Triggers>
            <i:EventTrigger EventName="DragDelta">
                <cmd:EventToCommand PassEventArgsToCommand="True"
                            Command="{Binding DragDeltaCommand}" />
            </i:EventTrigger>
        </i:Interaction.Triggers>
    </Thumb>
</DataTemplate>

如果我按下文本块,拇指会接收鼠标事件并执行DragDeltaCommand数据绑定命令,如果鼠标下没有元素(在Border内,列表框会收到命令并将项目设置为所选项目,并使用默认的蓝色突出显示该项目。

最终我想给项目一个背景,但这意味着列表框项目永远不会被选中,因为会有某些东西...... Border的背景。

如何让项目始终被选中,如何通过拖拽delta命令将鼠标按下事件发送到列表框和拇指?

0 个答案:

没有答案