【发布时间】:2010-09-25 22:38:02
【问题描述】:
我想创建由几个其他控件组成的 WPF 控件。主要问题是如何实现根据Model的类型选择正确的控件?
<MyControl>
<!-- if DataContext.GetType() == Type1 -->
<Control1 DataContext = {Binding}/>
<!-- if DataContext.GetType() == Type2 -->
<Control2 DataContext = {Binding}>
</MyControl>
我怎样才能很好地实现和设计它?我的想法是放一些类似...
Control CreateControl(object dataContext) {
if (dataContext.GetType() == TYpe1)
return new Control1() {DataContext = dataContext}
if (dataContext.GetType() == TYpe2)
return new Control2() {DataContext = dataContext}
}
但我不知道如何调用这样的方法,它在 XAML 中返回 Control...
【问题讨论】:
标签: wpf design-patterns xaml