像UserControl插入的WPF运行时策略模式

时间:2012-07-20 08:04:44

标签: wpf user-controls

我有一个用户控件,对于一系列文件类型是通用的。此用户控件需要保存并显示特定于每个文件的另一个用户控件。所以我喜欢一种基于文件类型的策略模式usercontrol选择。因此,如果用户打开文件A,则子usercontrol的类型为ucA,如果他打开文件类型B,则其类型为ucB

对此最好的方法是什么。

父用户控件是否应该持有ContentPresenter,其中i在运行时可以根据文件类型插入正确的子用户控件?或者有更好的方法来解决它。

或者只是运行一些类似于该效果的代码隐藏。

parentUCPanel.Children.Add(Factory.GetUC(filetype));

忘记添加我希望子usercontrols具有一个公共基类型,其中一些依赖项属性可以绑定到父usercontrol的viewmodel。

非常感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

查看DataTemplateSelector是否有用。