zqs0001 发表于 2021-10-17 09:28:17

求求助:GridControl自动生成序号列,如何自动匹配列宽度?

求助:GridControl自动生成序号列(Indicator列),如何自动匹配列宽度?
通过gridView的CustomDraw中的CustomDrawRowIndicator事件,加入
if (e.Info.IsRowIndicator && e.RowHandle >= 0)         {                e.Info.DisplayText =(e.RowHandle + 1).ToString();         }代码后,生出自动生成序号列(Indicator列),如下图。这个序号列自适应列宽度。

羽叶 发表于 2021-10-17 10:18:18

使用IndicatorWidth属性来设定指示列的宽度,这个宽度应该通过表格里显示的最大的行数来设置。

zqs0001 发表于 2021-10-17 18:01:30

不设置indicatorwidth属性,gridcontrol能否自动匹配这个宽度,有这样的功能吗?

fpbaggio 发表于 2021-12-8 15:20:11

我之前写的代码段,供参考
void OrderGridView_RowCountChanged(object sender, EventArgs e)
      {
            DevExpress.XtraGrid.Views.Grid.GridView gv = sender as DevExpress.XtraGrid.Views.Grid.GridView;
            if (gv == null)
                return;
            if (gv.RowCount <= 0)
            {
                gv.IndicatorWidth = -1;
            }
            else
            {
                gv.IndicatorWidth = 25 + Convert.ToInt32(Math.Floor(Math.Log(gv.RowCount, 10)) + 1) * 5;
            }
      }
页: [1]
查看完整版本: 求求助:GridControl自动生成序号列,如何自动匹配列宽度?