求求助:GridControl自动生成序号列,如何自动匹配列宽度?
求助:GridControl自动生成序号列(Indicator列),如何自动匹配列宽度?通过gridView的CustomDraw中的CustomDrawRowIndicator事件,加入
if (e.Info.IsRowIndicator && e.RowHandle >= 0) { e.Info.DisplayText =(e.RowHandle + 1).ToString(); }代码后,生出自动生成序号列(Indicator列),如下图。这个序号列自适应列宽度。
使用IndicatorWidth属性来设定指示列的宽度,这个宽度应该通过表格里显示的最大的行数来设置。 不设置indicatorwidth属性,gridcontrol能否自动匹配这个宽度,有这样的功能吗?
我之前写的代码段,供参考
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]