WPF

2014-06-05 20 views
5

WPF'daki Düzenlenebilir ComboBox için yazım denetimi nasıl yapılır: SpellCheck'in yerleşik bir özelliği vardır. SpellCheck, otomatik olarak tüm textual input controls öğelerini devralan TextBoxBase nesnesine eklenir. Böylece herhangi bir giriş kontrolü otomatik olarak Yazım Denetimi işlevselliğini türetecektir.WPF

TextBoxBase'dan devralınamayan editable ComboBox için yazım denetleyicisini ayarlamak için bir çözüm arıyorum. Düzenlenebilir ComboBox denetleyicisinin yazım denetimini ayarlamanın herhangi bir yolu var mı?

cevap

4

ComboBox için declare your own ControlTemplate gerekir. Bu ControlTemplate içinde, için ControlTemplate varsayılan ile başlayabilirsiniz, MSDN'de ComboBox Styles and Templates sayfasında bulabilirsiniz.

varsayılan şablonunda, tahmin edeceğiniz gibi bu ComboBox düzenlenebilir bölümü ... Bir TextBox PART_EditableTextBox adlı görmelisiniz. Sonra tüm yapmanız gereken, üzerinde True için SpellCheck.IsEnabled Ekli Mülkiyet kurmak ve uygulamaktır senin senin ComboBox.Template değer olarak yeni ControlTemplate:

<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}" />