翻譯|使用教程|編輯:龔雪|2020-08-11 09:58:39.533|閱讀 404 次
概述:通過DevExpress WPF Controls,您能創(chuàng)建有著強大互動功能的XAML基礎(chǔ)應(yīng)用程序,本文將為您介紹如何實現(xiàn)自定義DateEdit并自動更正值。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
下載DevExpress v20.1完整版 DevExpress v20.1漢化資源獲取
通過DevExpress WPF Controls,您能創(chuàng)建有著強大互動功能的XAML基礎(chǔ)應(yīng)用程序,這些應(yīng)用程序?qū)W⒂诋?dāng)代客戶的需求和構(gòu)建未來新一代支持觸摸的解決方案。
使用DateEdit控件時,該控件由于掩碼"autocorrects"用戶輸入的值,因此如果用戶輸入2020-04-31,他將獲得2020-04-01。這種情況下,用戶可能會以外輸入不正確的日期,并且沒有任何警告可通知給用戶,他將繼續(xù)執(zhí)行不正確的日期。最好讓用戶輸入無效日期并在編輯器上顯示驗證錯誤,編輯器應(yīng)保持其格式,光標(biāo)應(yīng)與原始DateEdit控件一樣,從日期的一部分跳到另一部分。 唯一的不同是能夠輸入與格式相對應(yīng)的無效日期并獲得驗證錯誤,這該如何實現(xiàn)?
DateEdit是帶有DateTime類型掩碼的文本編輯器,該掩碼不允許輸入錯誤的日期,這會導(dǎo)致如上所述的行為操作。
為了實現(xiàn)目標(biāo),可以使用掩碼創(chuàng)建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,因此綁定該值時,需要創(chuàng)建一個自定義Converter。請注意,需要將適當(dāng)?shù)娜掌诟袷絺鬟f給轉(zhuǎn)換器。 例如,可以通過ConverterParameter執(zhí)行此操作。
DevExpress技術(shù)交流群2:775869749 歡迎一起進群討論
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都網(wǎng)