MVVM を使用して WPF アプリケーションに取り組んでいますが、MVVM ライトなどの MVVM フレームワークを使用していません。少なくとも 8 ~ 9 個のコントロールをホストするユーザー コントロールを作成しました。これはメイン ウィンドウの ItemControl に表示されます。メイン ウィンドウには、保存ボタンと閉じるボタンがあります。カスタム DataValidation を実装しました。いずれかのコントロールにデータ検証がある場合、[保存] ボタンが無効になります。これは、他のすべてのコントロールでは期待どおりに機能しますが、ItemControl では機能しません。ユーザー コントロールにはデータ検証があり、検証エラーが表示されますが、保存ボタンを無効にできません。どんな助けでも本当に感謝します。追加の詳細が必要な場合はお知らせください。
1 に答える
0
ボタンを有効または無効にするには、MVVMコマンドの使用を検討する必要があります。
CanExecute()
デリゲート機能を使用して、コマンドをボタン([保存]など)にバインドできます。これにより、(ユーザーコントロールの有効性プロパティを使用して)CanExecute()
上のユーザーコントロールのいずれかItemsControl
が無効であるかどうかを確認し、falseを返すことができます。
CanExecute()
UIのレンダリングのほぼすべての機会で起動されるため、一種の観察可能です。
于 2012-01-18T05:30:05.087 に答える