如何在视图WPF中创建视图

时间:2014-03-01 00:05:45

标签: c# wpf

我解释了我的问题,因为我对UI设计很陌生:

我有一个主视图,它在其左侧部分显示一个TreeView。选择元素时,我想在同一窗口的右侧显示项目的描述。本说明书的设计取决于项目的性质。 所以我创建了一个对应于不同可能设计的每个项目类型的视图。

现在当我点击TreeView时,我不知道如何在同一个窗口的右侧显示相应的视图。 (我不是要求捕获事件,只是在另一个视图中显示视图,就像我动态绘制控件一样)。

有可能吗?如果不是,你会建议采用什么样的方法?

非常感谢。

1 个答案:

答案 0 :(得分:2)

这似乎是数据模板的一个很好的候选者。

基本上,创建一个内容展示器并将其content属性绑定到TreeView的SelectedItem属性。现在,在ContentTemplate属性中为每个类型创建数据模板(使用DataType属性)。

现在,只要您在树视图中选择了某些内容,就会使用正确的数据选择正确的数据模板。

就一个单独的调度员来说,我不确定,但我也不确定需要一个场景。

可以在此SO question中找到更多信息。

样品:

    <ContentPresenter Content="{Binding Path=SelectedItem, ElementName=TreeView}">
        <ContentPresenter.ContentTemplate>
            <DataTemplate DataType="{x:Type Type1}">
                <!-- Bunch of stuff-->
            </DataTemplate>
            <DataTemplate DataType="{x:Type Type2}">
                <!-- Bunch of stuff-->
            </DataTemplate>
        </ContentPresenter.ContentTemplate>
    </ContentPresenter>