.net - 单击时如何使 WPF 列表框子数据模板控件选择 ListBoxItem 容器?

标签 .net wpf listbox listboxitem childcontrol

我有一个列表框,在数据模板中有一个扩展器。

如果我单击 Expander Header,则扩展器会展开内容区域但不会选中父 ListBoxItem。

如果我点击扩展器的扩展内容区,父 ListBoxItem 将被选中。

如何在单击 expanderHeader 时使内容展开并选中父列表框项?

最佳答案

我意识到这个问题已经得到解答,但是有一种更简单的方法可以达到这个预期的结果。您可以将 Trigger 添加到 ListBoxItem Style 中,只要 ItemTemplate 中的元素有键盘,它就会选择 ListBoxItem重点:

<Style.Triggers> 
  <Trigger Property="IsKeyboardFocusWithin" Value="True"> 
    <Setter Property="IsSelected" Value="True"/> 
  </Trigger> 
</Style.Triggers>

有关更多信息,请查看 MSDN , 或 post1post2 .

关于.net - 单击时如何使 WPF 列表框子数据模板控件选择 ListBoxItem 容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5194140/

相关文章:

.net - 多线程最佳实践

c# - 为什么 1000 个线程比几个线程快?

c# - 单元测试 UIElements

c# - .net SqlClient 和 .NET CORE Web API 连接字符串

c# - 在短和字节之间转换的好方法?

.net - MVVM Light 工具包 - 维护吗?今天在这里 - 明天就走了?

javascript - WPF WebBrowser 通过 IWebBrowser2 界面的静默模式不起作用?

silverlight - 绑定(bind)值未显示在列表框中(silverlight 3)

c# - 从 Invoke 方法中获取 RETURN

javascript - 如何使用 jquery 将下拉菜单转换为单选按钮