翻譯|使用教程|編輯:龔雪|2020-08-11 09:58:39.533|閱讀 404 次
概述:通過DevExpress WPF Controls,您能創建有著強大互動功能的XAML基礎應用程序,本文將為您介紹如何實現自定義DateEdit并自動更正值。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
下載DevExpress v20.1完整版 DevExpress v20.1漢化資源獲取
通過DevExpress WPF Controls,您能創建有著強大互動功能的XAML基礎應用程序,這些應用程序專注于當代客戶的需求和構建未來新一代支持觸摸的解決方案。
使用DateEdit控件時,該控件由于掩碼"autocorrects"用戶輸入的值,因此如果用戶輸入2020-04-31,他將獲得2020-04-01。這種情況下,用戶可能會以外輸入不正確的日期,并且沒有任何警告可通知給用戶,他將繼續執行不正確的日期。最好讓用戶輸入無效日期并在編輯器上顯示驗證錯誤,編輯器應保持其格式,光標應與原始DateEdit控件一樣,從日期的一部分跳到另一部分。 唯一的不同是能夠輸入與格式相對應的無效日期并獲得驗證錯誤,這該如何實現?
DateEdit是帶有DateTime類型掩碼的文本編輯器,該掩碼不允許輸入錯誤的日期,這會導致如上所述的行為操作。
為了實現目標,可以使用掩碼創建PopupBaseEdit:
<dxe:PopupBaseEdit Mask="\d{4}-\d{2}-\d{2}" MaskType="RegEx" Validate="DateEdit_Validate"...> <dxe:PopupBaseEdit.PopupContentTemplate> ... </dxe:PopupBaseEdit.PopupContentTemplate> </dxe:PopupBaseEdit>
若要使PopupBaseEdit看起來像DateEdit,建議使用屬性。
PopupBaseEdit彈出窗口中使用的DateEditCalendar使用DateTime類型,而PopupBaseEdit的EditValue包含一個String,因此綁定該值時,需要創建一個自定義Converter。請注意,需要將適當的日期格式傳遞給轉換器。 例如,可以通過ConverterParameter執行此操作。
DevExpress技術交流群2:775869749 歡迎一起進群討論
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都網