WPF
带有拼写检查的内置功能。拼写检查被添加到TextBoxBase
对象,它自动继承了所有的文本输入控件
。因此,任何输入控件都将自动派生拼写检查功能。
但我正在寻找一种解决方案来为 editable ComboBox
设置拼写检查器,它不是从 TextBoxBase
继承的。是否有任何方法可以设置拼写检查用于可编辑组合框 Controller ?
最佳答案
您需要 declare your own ControlTemplate
对于 ComboBox
。在那个 ControlTemplate
中,您可以从 ComboBox
的默认 ControlTemplate
开始,您可以在 ComboBox Styles and Templates 上找到它。 MSDN 上的页面。
在默认模板中,您应该看到一个名为 PART_EditableTextBox
的 TextBox
...您可能已经猜到了,这是 ComboBox< 的可编辑部分
。然后您需要做的就是将 SpellCheck.IsEnabled
附加属性设置为 True
并将新的 ControlTemplate
应用为您的 ComboBox.Template
值:
<TextBox x:Name="PART_EditableTextBox"
SpellCheck.IsEnabled="True"
Style="{x:Null}"
Template="{StaticResource ComboBoxTextBox}"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
Margin="3,3,23,3"
Focusable="True"
Background="Transparent"
Visibility="Hidden"
IsReadOnly="{TemplateBinding IsReadOnly}" />
关于c# - 如何在 WPF 中对可编辑组合框应用拼写检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24054507/