0
我有一個使用MVVM的WPF應用程序。在WPF中綁定一個Incode DataTemplate
我知道,在XAML這樣做的方法,但我工作的一個插件架構,並與其中一個插件公開它的視圖模型到我的插件主機的視圖模型,它是DataTemplate中的解決方案上來。我想將插件視圖的生命週期管理權限留給WPF。我試圖讓插件暴露一個UserControl,但當WPF決定處理我的UserControl時遇到了問題,所以我不會在沒有怪異的哈希工作的情況下重新附加它。我有問題得到某種綁定工作,我可以將控件綁定到數據,並且它是我的數據模板的模板。
我有一個視圖模型看起來是這樣的:
public class MyViewModel
{
public DataTemplate SelectedTemplate{ get; set;}
public object SelectedViewModel {get; set;}
}
所選模板和視圖模型確定其他地方的代碼,但無關的我的問題。
我的問題是我如何綁定到DataTemplate,以便我知道如何顯示SelectedViewModel中顯示的數據。
的DataTemplate中是一個DataTemplate創建incode其中respresents:
<DataTemplate DataType="{x:Type vm:MyViewModel}">
<v:MyUserControl />
</DataTemplate>
我曾嘗試:
<UserControl Template="{Binding Path=SelectedTemplate}"
Content="{Binding Path=SelectedViewModel"} />
但用戶控件需要一個控件模板,而不是數據模板。