WPF入门基础2-控件模板、数据模板
1.控件模板
<ControlTemplate x:Key="myTemplate" TargetType="Button">
<Border Background="Green" CornerRadius="45">
<StackPanel>
<TextBlock Text="****"/>
<ContentPresenter
VerticalAlignment="{TemplateBinding VerticalAlignment}" HorizontalAlignment="{TemplateBinding HorizontalAlignment}"/>
</StackPanel>
</Border>
</ControlTemplate>
引用:Template="{StaticResource myTemplate}"
2.1数据模板 CellTemplate

<DataGrid x:Name="MyList" AutoGenerateColumns="False" CanUserSortColumns="True" CanUserAddRows="False">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Age}" Header="年龄" Width="100"/>
<DataGridTextColumn Binding="{Binding Name}" Header="学生姓名" Width="100"/>
<DataGridTextColumn Binding="{Binding Sex}" Header="性别" Width="100"/>
<DataGridTemplateColumn Width="200" Header="操作">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Button Content="新增"/>
<Button Content="删除"/>
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
</Grid>
CS
public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); List<Student> student = new List<Student>() { new Student() {Age=18,Name="张三",Sex="男" }, new Student() {Age=19,Name="李四",Sex="男" }, new Student() {Age=20,Name="小红",Sex="女" } }; MyList.ItemsSource = student; } } class Student { public int Age { get; set; } public string Name { get; set; } public string Sex { get; set; } }
2.2

<ItemsControl x:Name="MyLstBox"> <ItemsControl.ItemsPanel> <ItemsPanelTemplate> <WrapPanel/> </ItemsPanelTemplate> </ItemsControl.ItemsPanel> <ItemsControl.ItemTemplate> <DataTemplate> <Button Width="50" Height="50" Margin="10" Content="{Binding Code}"/> </DataTemplate> </ItemsControl.ItemTemplate> </ItemsControl>

浙公网安备 33010602011771号