DataTemplate,数据模板,也是一种资源,是数据驱动UI界面。
1.建立一个wpf程序,在资源中写入dt模板
<Window.Resources>
<DataTemplate x:Key="dt">
<StackPanel Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Center" >
<TextBlock Text="a文本"></TextBlock>
<TextBlock Text="a按钮" Background="Red"></TextBlock>
<Button Content="删除" Width="50" Height="20"></Button>
</StackPanel>
</DataTemplate>
</Window.Resources>
2.在界面分别建立2个装载数据的控件ListBox,DataGrid
<Grid>
<ListBox x:Name="list" Width="400" Height="400" ItemTemplate="{StaticResource dt}" HorizontalAlignment="Left">
</ListBox>
<DataGrid x:Name="dg" Width="400" Height="400" HorizontalAlignment="Right">
<DataGrid.Columns>
<DataGridTemplateColumn Header="操作" Width="*" CellTemplate="{StaticResource dt}" >
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
</Grid>
3.在后台为控件赋值数据源
public MainWindow()
{
InitializeComponent();
List<int> ls = new List<int>();
for (int i = 0; i < 10; i++)
{
ls.Add(i);
}
list.ItemsSource = ls;
dg.ItemsSource = ls;
}
4.效果
数据模板常用于下图所示: