###最初に
ViewModel側でプロパティを定義し、
View側で表示するUserControlをプロパティの状態によって変えようと考えています。
ペイントで書いた超雑な絵ですがイメージ図
###試してみたこと①
複数のUserControlを同一箇所にソース上で記載し、
- 表示するUserControlのVisibillityをVisible
- 表示しないUserControlのVisibillityをCollapsed
にすることで要素の領域を取らない形にすれば、UserControlの切り替えは可能ですが
もっとうまいやり方があるのかな…と
###試してみたこと②
とりあえず行き当たりばったりで調べて以下のようなソースになりました。
XAML
1<!--略--> 2 <UserControl.Resources> 3 <DataTemplate x:Key="A"> 4 <controls:hoge /> 5 </DataTemplate> 6 <DataTemplate x:Key="B"> 7 <controls:fuga/> 8 </DataTemplate> 9 <DataTemplate x:Key="C"> 10 <controls:piyo /> 11 </DataTemplate> 12 </UserControl.Resources> 13 14 <UserControl ContentTemplate="{StaticResource A}" Content="{Binding}"/> 15<!--略-->
この実装では、Aに割り当てられているhogeのUserControlが表示されました。
###やりたいこと
ノリとしては、試してみたこと②に記載したソース内に書かれている
"{StaticResource A}"
のA
の部分をBindingして、ViewModelから
表示を決められる様にしたいです。
何か思いつきがありましたらご教授ください。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー