私はwpfでdatapickerを持っており、過去の日付を無効にする必要があります。 MVVMパターンを使用しています。 可能ですか?データピッカーの過去の日付を無効にするwpfは可能です
あなたはどのようにしますか?
私はwpfでdatapickerを持っており、過去の日付を無効にする必要があります。 MVVMパターンを使用しています。 可能ですか?データピッカーの過去の日付を無効にするwpfは可能です
あなたはどのようにしますか?
DisplayDateStart
とDisplayDateEnd
のプロパティはDatePicker
です。それらは依存関係のプロパティなので、MVVMを使用してDataContext
を使用してそれらを指定できます。ここではドキュメントがあります:
、DisplayDateStartとDisplayDateEndはカレンダーに影響を与え、それがこの範囲外の有効な日付をtypeingからユーザーを停止しません。
<Binding Path="SelectedDate" UpdateSourceTrigger="PropertyChanged">
<Binding.ValidationRules>
<ExceptionValidationRule />
</Binding.ValidationRules>
</Binding>
:このあなたのViewModelにバインドされたプロパティにセッターに例外を投げるか、IDataErrorInfoを使用している場合は、この[文字列COLUMNNAME]
ExceptionValidationRuleを経由して検証エラーメッセージを返す可能性を行うには
お使いの無効日付の範囲は、XAMLでキープしたい定数を伴う場合
This はすっきり解決策である可能性があります。
あなたは
のxmlns設定されていることを確認してください本日の日付
<DatePicker Name="dt_StartDateFrom" DisplayDateStart="{x:Static sys:DateTime.Today}"> </DatePicker>
で
をDisplayDateStart
属性を設定する必要があります。sys = "CLR名前空間:システム、アセンブリ= mscorlib"
<UserControl>
タグsys:
パラメータ
P.S.将来の日付を無効にするには属性
を返信いただきありがとうございます。 – user9969
を探すためのものがあります。@benPearceは他の回答に記載されているとおり、これでは不十分です。 IMOこれはコントロールそのものの欠陥です。 –