【问题标题】:WPF: Master/Detail situationWPF:主/详细情况
【发布时间】:2011-02-09 21:37:01
【问题描述】:

我在左侧有一个带有可选项目的区域,根据选择的项目类型,我想在右侧显示三种或四种不同形式中的一种。

最好做一些类型的控件,这样主窗体就不会那么混乱了。

WPF 中最好的模式是什么?

我是 WPF 新手,我花了一些时间在一些明显不正确的方向上。谢谢!

【问题讨论】:

    标签: .net wpf design-patterns master-detail


    【解决方案1】:

    我想说,只要有可能,模板是 WPF 的必经之路。它们定义了控件或数据在 UI 中的显示方式。例如,使用模板,可以使用任何对象(不仅是字符串)作为 Button 的内容。如果将 Button 的内容设置为 MyType 类型的对象,WPF 将在资源中查找 MyType 的 DataTemplate 并在找到时使用该模板。如果没有找到 DataTemplate,它将使用该对象的ToString() 方法并显示结果。

    在您的场景中,您可以在右侧的详细信息视图中使用简单的ContentControl,并为每种项目类型定义不同的DataTemplates。如果不是每个项目都需要不同的模板(即某些类型共享相同的模板),您可以实现 ContentTemplateSelector 以编程方式确定正确的 DataTemplate

    Data Templating Overview 很好地介绍了该主题。

    HTH,祝你好运!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-09-09
      • 2016-08-16
      • 2013-06-28
      • 2014-10-26
      • 2011-01-30
      • 1970-01-01
      • 2014-08-03
      • 2010-11-27
      相关资源
      最近更新 更多