洗練されたUIロジックの実装のベストプラクティスを探しています。 Windows Formsアプリケーションで作業していますが、どのプラットフォームでもこの問題を解決するための一般的なパターンがあるはずです。洗練されたUIロジックをどのように実装しますか?
私は自分のフォーム上に多数のコントロールを持っています。リスト、ボタン、テーブル、ツリービューがあります。つまり、「コンテキスト」に応じて、コントロールのいくつかが有効になり、無効になっているものがあります。それらのうちのいくつかは、現時点でいくつかの機能を提供することができ、他の機能は提供しない。
現在、「そのまま」実装されています。私はイベントを処理し、変更をチェックし(新しいツリーノードを選択し、いくつかのノードを選択したなど)、いくつかのコントロールを無効にするか有効にする必要があるかどうかを決定します。フォームコードが複雑に見えるので、私はこのアプローチが本当に好きではありません。さらにロジックを追加する必要がある場合は、さらに複雑になります。私は本当に心配しています。私たちは非常に機敏で、新しい機能や多くの変更が日常的な基準であるからです。
この論理をすべて(機能)の部分に分けることは、各機能がその状態を確認する方法を知っているオブジェクトであり、この状態に応じて関連するコントロールを有効または無効にします。
新しいものを発明し、広く使われている良いアイデアを見つけようとしないでください。単一のUpdateUI()メソッドのアプローチをお勧めしないでください、私はそれが長期的には何も変わらないと信じています。
ありがとうございました。
ありがとう、ちょうど私が必要とするようです! – agibalov