所以,假设我有一个带有自定义数据模板的ComboBox.数据模板中的一个项目是按钮:
<ComboBox Width="150" ItemsSource="{Binding MyItems}">
<ComboBox.ItemTemplate>
<DataTemplate>
<Button Content="ClickMe" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
Run Code Online (Sandbox Code Playgroud)
这个问题是该按钮吃掉了点击,如果选择了该按钮,项目就不会被选中.这意味着下拉菜单不会消失,也不会选择任何项目.
我知道为什么会发生这种情况.
有办法解决它吗?可能是一种处理按钮单击的方法(我绑定到命令)并告诉它继续向上链,这样组合框也可以处理点击?
注意:我在Silverlight中看到了我的问题,但我猜测WPF可以看到完全相同的行为.