DevExpress v20.1フルバージョンをダウンロードDevExpress v20.1 中国語リソース獲得
DevExpress社のWPFコントロール、あなたは現代的な顧客のニーズに焦点を当て、強力なインタラクティブ機能を備えたXAMLベースのアプリケーションを作成することができますし、将来的にはタッチ対応ソリューションの新世代を構築します。
発生した問題
DateEditコントロールを使用する場合、コントロールはユーザーが入力した値を「自動修正」するため、ユーザーが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のようにするには、PopupContentTemplateプロパティを使用することをお勧めします。
PopupBaseEditポップアップウィンドウで使用されるDateEditCalendarはDateTimeタイプを使用し、PopupBaseEditのEditValueには文字列が含まれるため、この値をバインドする場合は、カスタムコンバーターを作成する必要があります。適切な日付形式をコンバータに渡す必要があることに注意してください。たとえば、ConverterParameterを使用してこの操作を実行できます。
DevExpress Technical Exchange Group 2:775869749グループディスカッションへようこそ