如何响应双击的WPF ComboBox的ComboBoxItem?现在,当双击它时,它会关闭ComboBox并单击下面的任何内容。我想对双击的项目采取行动,防止事件继续发生。
答案 0 :(得分:4)
你最好的选择是在ComboBox的ItemTemplate
中拥有一个控件,它将占据ComboBoxItem
的整个空间并处理DoubleClick
事件。像这样:
<ComboBox HorizontalContentAlignment="Stretch">
<ComboBox.ItemTemplate>
<DataTemplate>
<Button Background="Transparent"
BorderBrush="Transparent"
MouseDoubleClick="Button_MouseDoubleClick" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
答案 1 :(得分:0)
我不知道是否还有人对此感兴趣,但我花了不少时间研究解决方案而没有成功。最后,我找到了一个运行良好的解决方案,它与Adi的评论类似。
1)将TextBox放在ComboBox控件的文本框区域上。不要覆盖下拉按钮。 2)通过代码或IDE在此TextBox上使用“BringToFront”运算符。 3)将TextBox的Data Binding“Text”属性设置为与ComboBox相同的绑定源和字段。 4)设置TextBox的DoubleClick事件,以执行您想要执行的任何操作。
就是这样。