0

ここでWPF初心者。ViewModel クラスに次のSomethingHappenedように定義されたイベントがあるとします。

Public Event SomethingHappened(message As String)

私のビューにはローカルリソースがあり、次のように定義されています。

<local:MsgWindow x:Key="MsgWindow" Visibility="Hidden" >

ViewModel はDataContextView の として割り当てられます。VisibilityMsgWindow の を onに変更するにはどうすればよいですVisibleSomethingHappended?

4

2 に答える 2

1

ビュー モデルで bool プロパティを定義し、BoolToVisibilityConverter (IValueConverter を実装) を作成し、コンバーターを使用して XAML の Visibility プロパティをモデルのプロパティにバインドします。イベントを発生させる代わりに、プロパティを設定します (プロパティが INotifyPropertyChanged から PropertyChanged を発生させるか、依存関係プロパティであることを確認してください)。

于 2013-02-26T06:22:04.633 に答える
0

リソースで、次のことを宣言します。

<BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter" />

次に、ビューモデルで次のように宣言します。

public bool Visible { get; set; }

次に、コンバーターを使用してコンポーネントをこのプロパティにバインドします

<local:MsgWindow x:Key="MsgWindow" Visibility="{Binding Visible, Converter={StaticResource BooleanToVisibilityConverter}}" >
于 2013-02-26T09:38:38.717 に答える