DevExpress GridView行头显示行号且根据行号宽度动态自适应显示

DevExpress GridView行头显示行号且根据行号宽度动态自适应显示

第一步、首先找到对应的gridview当中CustomDrawRowIndicator事件,双击进去

            this.gridView1.CustomDrawRowIndicator += new DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventHandler(this.gridView1_CustomDrawRowIndicator);

第二步、在事件中添加如下代码

行号+1

        private void gridView1_CustomDrawRowIndicator(object sender, RowIndicatorCustomDrawEventArgs e)
        {	//这里我设置ShowLineNumber是true
            if (ShowLineNumber)
            {
                IndicatorObjectInfoArgs info = e.Info;
                if (info == null || !info.IsRowIndicator || e.RowHandle < 0)
                    return;
                info.Appearance.TextOptions.HAlignment = HorzAlignment.Center;
                info.DisplayText = (e.RowHandle + 1).ToString();

            }
        }

行号的宽度随着行数的增长也会跟着变化

     private void gridView1_RowCountChanged(object sender, EventArgs e)
        {

            if (gridView1.RowCount == -1)
            {
                gridView1.IndicatorWidth= 13;
            }
            else
            {
                gridView1.IndicatorWidth= gridView1.RowCount.ToString().Length + 40;
            }
        }

第三步、运行起来,可以根据自己的项目实际需求调整值

   gridView1.IndicatorWidth= gridView1.RowCount.ToString().Length + 实际值;

版权声明:本文为weixin_42236617原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。