前言:在我們日常使用軟件的時候,Combobox會讓用戶很方便的選擇出需要的東西,但是ComboBox中的下拉行數過多時就不那么好用了。
如果在項目中有很多這樣的ComboBox控件的話,我們可以考慮重寫控件。
重寫后的的工具類:(重寫了ComboBox的OnkeyUp事件,即:鍵盤松開)
class EnterComboBox : ComboBox { protected override void OnKeyUp(KeyEventArgs e) { if (e.Key == Key.Enter) { //你的邏輯 } } }
那么我們如何使用重寫功能后的ComboBox控件呢?
只需在前端XAML中的命名空間加入:
xmlns:util="clr-namespace:你的工具類的命名空間"
在XAML中使用控件:
<util:EnterComboBox IsEditable="True"/>
IsEditable:處於可編輯狀態,即:ComboBox可以像TextBox一樣輸入文字。
重寫后的控件按下回車即可觸發你的邏輯。(例如:輸入下標找到對應的數據,輸入拼音簡拼找到對應數據等等)
搬運轉發請鏈接注明出處。