0
私は2つのユーザーコントロールを持っています。 OperationPanelとOutPutPanel。これらはMainWindow.xamlに追加されます。 OperationPanelの「Execute」ボタンがクリックされたときに、OutPanelのラベルを更新するにはどうすればいいですか?あるusercontrolのラベルの内容を別のusercontrolから更新するには?
私は2つのユーザーコントロールを持っています。 OperationPanelとOutPutPanel。これらはMainWindow.xamlに追加されます。 OperationPanelの「Execute」ボタンがクリックされたときに、OutPanelのラベルを更新するにはどうすればいいですか?あるusercontrolのラベルの内容を別のusercontrolから更新するには?
MVVMを使用しているか、OO設計に習熟しているか(「メディエータパターン」など)によって、これを解決する方法はさまざまです。
単純な解決策(私の頭の上から外す)は、実行ボタンをクリックして呼び出すMainWindow.xaml.csに静的メソッドを追加します。このメソッドは、2番目のユーザーコントロールが購読するイベント(再度静的)を発生させます。あなたはまた、再利用性のために、独自の静的クラスにこのコードを移動することができ
public static event EventHandler Executed;
public static void RaiseExecutedEvent()
{
if (Executed != null)
{
Executed(this, EventArgs.Empty);
}
}
- :コードは次のようになります。
イベントを静的に設定していただきありがとうございます。 –