首页 > 解决方案 > WPF 中 DataTemplate 或 HierarchicalDataTemplate 的 DataType 属性的格式是什么?

问题描述

我试图了解 DataTemplate 或 HierarchicalDataTemplate 的 DataType 参数的格式。互联网上散布着很多示例,我可以复制并开始工作,但我不明白我的选择是什么。

例如:

<DataTemplate DataType="{x:Type model:DepartmentSelectionViewModel}">

我想了解 x:Type 的含义。以及什么 model:DepartmentSelectionViewModel 是什么意思。

或者:

<HierarchicalDataTemplate DataType="{x:Type r:NetworkViewModel}" ItemsSource="{Binding Children}">

同样,它有 x:Type。但这次是 r:NetworkViewModel。

其他示例将具有 sys: 或 local:。所有这些设置是什么意思?我怎样才能发现存在哪些其他设置?(设置甚至是描述它们的正确词吗?)

标签: wpfdatatemplate

解决方案


modelr参考XAML 命名空间映射

这些通常在根标记或 XAML 文件中找到,并定义 CLR 命名空间,其中分别定义了类型(类)DepartmentSelectionViewModel和:NetworkViewModel

<Window ... xmlns:model="clr-namespace:Project1" ... />

namespace Project1
{
    public class DepartmentSelectionViewModel { ... } 
}

您可以根据需要定义任意数量的命名空间映射。

x:Type指将应用隐式DataTemplate的类型,即在呈现视图时DataTemplateDataType属性设置为的{x:Type model:DepartmentSelectionViewModel}将应用于集合中的所有DepartmentSelectionViewModel对象。ItemsTreeView


推荐阅读