wpf中的模板分为数据模板和控件模板,我们可以通过我们自己定制的数据模板来制定自己想要的数据表现形式。例如:时间的显示可以通过图片,也可以通过简单数字表现出来。
例如:
(1)先在Demo这个命名空间下写一个people的类,立面包含name,photo的属性
(2)在前端页面中写一个控件:
<ListBox x:Name="ListBox_PeopleList" ItemTemplate="{StaticResource MyTemplate}" />
这个控件将按照MyTemplate的样子显示。
(3)定义模板样式:
首先引入people的命名空间:demo是自己定义的名字,代表Demo命名空间。
xmlns:demo="clr-namespace:Demo"
然后在它下面编写模板
<Window.Resources>
<!--列表模板-->
<DataTemplate x:Key="MyTemplate" DataType="{x:Type demo:People}">
<Grid VerticalAlignment="Center" HorizontalAlignment="Center" Margin="4,4,4,4" >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Image Source="{Binding Photo}" Width="50" Height="50" Grid.Column="0" Grid.RowSpan="1"/>
<TextBlock Text="{Binding Name}" Grid.Column="1" Grid.ColumnSpan="1" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</DataTemplate>
</Window.Resources>
最后显示效果: