wpf - 如何向 WPF 中的可编辑组合框添加焦点样式

标签 wpf xaml combobox styling

我一直在查看以下example关于如何设置 ComboBox 的样式,但在进入可编辑组合框时我无法创建焦点效果。每当 ComboBox 接收焦点时,它应该进入编辑模式,并且组件应该具有焦点样式。

基本问题是,每当我进入编辑模式时,实际上具有焦点的不是周围的ComboBox,而是文本子组件,并且我无法创建 >在文本组件上触发,它会修改ComboBox的边框样式,因为我不知道如何从触发器引用父组件。

我尝试在 TextBox 或样式触发器上添加 ControlTemplate Trigger。我尝试通过名称或使用 TemplateBinding 选项来引用 ComboBox,但没有成功。一个简单的例子将非常感激。

最佳答案

将 IsKeyboardFocusWithin 绑定(bind)到 IsDropDownOpen

<ComboBox ItemsSource="{Binding SortedItems}"
          StaysOpenOnEdit="True"
          IsDropDownOpen="{Binding IsKeyboardFocusWithin, RelativeSource={RelativeSource Self}, Mode=OneWay}" />

关于wpf - 如何向 WPF 中的可编辑组合框添加焦点样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1543804/

相关文章:

c# - 将集合绑定(bind)到 WPF 列表框

C# wpf 如何从 Main 调用 initializeComponent

c# - 如何在所有页面的导航栏中添加图标?

java - 如何正确使用我的值作为 JComboBox.setModel() 的参数?

c# - WPF - 在运行时定义了一个列表源,但仍有设计时的示例数据

c# - 使用 XAML 和 C# 为 Windows Phone 8 应用构建自定义进度条

c# - 将转换器指定为 MarkupExtension 时在设计时出现 InvalidCastException

javascript - 迭代特定类型的 Ext JS 表单组件

javascript - 为什么 jquery 选项选择不起作用

wpf - 无法使用 MVVM 灯将空文本框绑定(bind)到可为空的十进制数