私は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 つに変更すると必要になるのでしょうか?
これを解決する方法を教えてください(私は自分でやったことがあります)、なぜこれが起こっているのか説明したいのですが、これは私が興味を持っていることです.