我有一個使用模型視圖體系結構的樹視圖,每個TreeViewItem都有一個windows窗體屬性,當我單擊一個節點時,我希望應用程序顯示與該節點關聯的窗體樹的右側。WPF將樹視圖綁定到UserControl
如何使用綁定來實現此功能我嘗試了以下方法,但與ApplicationForms關聯的用戶控件未顯示。
<ContentControl Margin="163,5,127,5" Content="{Binding SelectedItem,ElementName=ApplicationTree}">
<ContentControl.Resources>
<DataTemplate DataType="{x:Type local:ApplicationViewModel}">
<StackPanel>
<TextBlock Text="Displaying an A!" />
<ContentPresenter Name="MyContent">
<ContentPresenter.Content>
<UserControl x:Name="UserCntrl2" HorizontalAlignment="Stretch" Height="Auto" Width="Auto" Content="{Binding ApplicationForms}"/>
</ContentPresenter.Content>
</ContentPresenter>
</StackPanel>
</DataTemplate>
<DataTemplate DataType="{x:Type local:ApplicationsViewModel}">
<StackPanel>
<TextBlock Text="Displaying a B!" />
<!--<TextBlock Text="{Binding Bar}" />-->
</StackPanel>
</DataTemplate>
</ContentControl.Resources>
</ContentControl>
看起來很好,我有任何綁定錯誤? – 2011-05-05 14:20:15
(在Visual Studio的輸出窗口中發現綁定錯誤) – 2011-05-05 15:51:01
我不是100%確定的,但我認爲我試圖顯示WindowsForm的事實可能是應該託管在WindowsFormsHost中的問題。但是,似乎windows窗體控件不支持綁定,所以我將被迫讓ApplicationsViewModel直接調用頂層應用程序。 – Jon 2011-05-05 16:45:22