WPF+Datagrid

本文详细探讨了WPF DataGrid的各种特性和使用技巧,包括列文本和标题的居中设置、动态创建与数据绑定、单元格内容获取、性能优化、样式自定义、多表头和列头的实现,以及在MVVM模式下实现SelectionChanged事件和XML动态生成双层表头。通过这些,可以帮助开发者提升DataGrid的使用效率和用户体验。
摘要由CSDN通过智能技术生成

Datagrid列的文本居中

 <!--列的文本居中-->
<Style x:Key="DataGridTextColumnCenterSytle" TargetType="{x:Type TextBlock}">
      <Setter Property="HorizontalAlignment" Value="Center" />
      <Setter Property="VerticalAlignment" Value="Center" />
 </Style>

等同于

 //设置居中样式( 推荐使用FindResource(name)来查找xaml)中的示例)
Style headerStyle = new Style() {
    TargetType = typeof(TextBlock) };
headerStyle.Setters.Add(new Setter() {
    Property = TextBlock.HorizontalAlignmentProperty, Value = HorizontalAlignment.Center });
eaderStyle.Setters.Add(new Setter() {
    Property = TextBlock.VerticalAlignmentProperty, Value = VerticalAlignment.Center });

Datagrid列的头部标题居中

 <DataGrid.ColumnHeaderStyle>
     <!--使每一列的头部标题居中-->
     <Style TargetType="DataGridColumnHeader">
     <Setter Property="HorizontalContentAlignment" Value="Center"/>
      </Style>
</DataGrid.ColumnHeaderStyle>

Datagrid列动态创建及设置居中显示

public void CreateGridColumn(DataTable dt)
{
   
    grid.Columns.Clear();

    //设置居中样式( 推荐使用FindResource(name)来查找xaml)中的示例)
    Style headerStyle = new Style() {
    TargetType = typeof(TextBlock) };
    headerStyle.Setters.Add(new Setter() {
    Property = TextBlock.HorizontalAlignmentProperty, Value = HorizontalAlignment.Center });
    headerStyle.Setters.Add(new Setter() {
    Property = TextBlock.VerticalAlignmentProperty, Value = HorizontalAlignment.Center });

    foreach (DataColumn column in dt.Columns)
    {
   
        var colName = column.ColumnName;
        var gridColumn = new DataGridTextColumn<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值