私はUser Control'sメインに2つ座っていUserCotrolます。
そのうちの 1 つだけをメインにする必要があります。
の特定のプロパティViewModelを変更すると、次のように変更します。
<UserControl>
<ContentControl>
<ContentControl.Style>
<Style TargetType="{x:Type ContentControl}">
<Setter Property="Content">
<Setter.Value>
<local:UserControl1/>
</Setter.Value>
</Setter>
<Style.Triggers>
<DataTrigger Binding="{Binding IsTwo}" Value="True">
<Setter Property="Content">
<Setter.Value>
<local:UserControl2/>
</Setter.Value>
</Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</ContentControl.Style>
</ContentControl>
</UserControl>
プロパティを に変更するとFalse問題UserControl1なく動作しますが、 に変更するとTrue表示に問題があり、画面間を移動しているときにのみ収まります。一時的な解決策として、UserControl が必要になるたびにイベントを作成しました。 1 から 2 に変更します。そのイベントが実行されると、メインを削除しUserControlて再度作成します。
しかし、私の質問は、なぜ 1 つに変更すると再作成する必要がなく、2 つに変更すると必要になるのでしょうか?
これを解決する方法を教えてください(私は自分でやったことがあります)、なぜこれが起こっているのか説明したいのですが、これは私が興味を持っていることです.
