您的位置:首页 > 其它

WPF之DataTemplate数据模板

2018-01-08 10:04 381 查看

DataTemplate 类:介绍数据对象的可视结构。

DataTemplateKey属性:

获取默认键的 DataTemplate。

DataType 属性:

获取或设置此 DataTemplate 所针对的类型。

Dispatcher 属性:

获取 Dispatcher 这 DispatcherObject 与相关联。

HasContent 属性:

获取一个值,该值指示是否此模板具有优化内容。

IsSealed属性:

获取一个值,该值指示此对象是否处于不可变状态,因此不能更改。

Resources属性:

获取或设置此模板的作用域内的可用资源的集合。

Template属性:

获取或设置用于录制或播放该模板的 XAML 节点定义或由一位撰稿人应用该模板对象的引用。

Triggers属性:

获取将应用属性值或执行操作基于一个或多个条件的触发器的集合。

VisualTree属性:

获取或设置模板的根节点。

下面的示例演示如何创建 DataTemplate 内联。 DataTemplate 指定每个数据项显示为三个 TextBlock 内的元素 StackPanel。 在此示例中,数据对象是一个名为类 Task。 请注意,每个 TextBlock 这个模板中的元素是否绑定到的属性 Task 类。

<ListBox Width="400" Margin="10"
ItemsSource="{Binding Source={StaticResource myTodoList}}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding Path=TaskName}" />
<TextBlock Text="{Binding Path=Description}"/>
<TextBlock Text="{Binding Path=Priority}"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>


它是更常见的是定义 DataTemplate 在资源部分使其成为可重用的对象,如以下示例所示︰

<Window.Resources>
<DataTemplate x:Key="myTaskTemplate">
<StackPanel>
<TextBlock Text="{Binding Path=TaskName}" />
<TextBlock Text="{Binding Path=Description}"/>
<TextBlock Text="{Binding Path=Priority}"/>
</StackPanel>
</DataTemplate>
</Window.Resources>
<ListBox Width="400" Margin="10"
ItemsSource="{Binding Source={StaticResource myTodoList}}"
ItemTemplate="{StaticResource myTaskTemplate}"/>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: