DataGrid列表绑定序号自增

本文介绍了一种在WPF DataGrid控件中自动为每行添加序号的方法。通过在DataGrid的第一列添加模板列,并利用行加载事件来动态设置TextBlock中的文本,实现了这一功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

思路:

在每个datagrid的第一列加上一个模板列,里面只定义一个textblock

之后在datagrid的行加载事件中,给每个行的textblock加上一个编号。

xaml代码:

                        <sdk:DataGridTemplateColumn  CanUserSort="False" Header="序号">
                            <sdk:DataGridTemplateColumn.CellTemplate>
                                <DataTemplate>
                                    <TextBlock HorizontalAlignment="Center" VerticalAlignment="Center"/>
                                </DataTemplate>
                            </sdk:DataGridTemplateColumn.CellTemplate>
                        </sdk:DataGridTemplateColumn>

cs代码:

        // 加载控件值
        /// <summary>
        /// 加载控件值
        /// </summary>
        private void InitControl()
        {
            try
            {
                #region 控件赋值

                this.OtherTechnique_Infos_Schema = null;

                this.tbTEXT.Text = string.Empty;


                this.dgList.ItemsSource = null;

                this.dgList.ItemsSource = this.listOtherTechnique_Infos_Schemas.OrderBy(t => t.CODE);
                this.dgList.LoadingRow += dataGrid_LoadingRow;

                #endregion 控件赋值
            }
            catch (Exception)
            {
                throw;
            }
        }

        /// <summary>
        /// 序号
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public void dataGrid_LoadingRow(object sender, DataGridRowEventArgs e)
        {
            var index = e.Row.GetIndex();
            var cell = this.dgList.Columns[0].GetCellContent(e.Row) as TextBlock;
            if (cell != null) cell.Text = (index + 1).ToString();
        }

大功告成!

转载于:https://www.cnblogs.com/xiaoqi123/p/6117084.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值