您的位置:首页 > 编程语言 > C#

[C#] winform中的DataGridView的列宽设置,添加序号

2017-08-10 14:41 127 查看
找了很多都说DataGridView有一个属性AutoSizeColumnMode,他有很多枚举值:

1、AllCells 调整列宽,以适合该列中的所有单元格的内容,包括标题单元格。  

2、AllCellsExceptHeader 调整列宽,以适合该列中的所有单元格的内容,不包括标题单元格。  

3、ColumnHeader 调整列宽,以适合列标题单元格的内容。  

4、DisplayedCells 调整列宽,以适合当前屏幕上显示的行的列中的所有单元格的内容,包括标题单元格。  

5、DisplayedCellsExceptHeader 调整列宽,以适合当前屏幕上显示的行的列中的所有单元格的内容,不包括标题单元格。  

6、Fill 调整列宽,使所有列的宽度正好填充控件的显示区域,只需要水平滚动保证列宽在DataGridViewColumn.MinimumWidth 属性值以上。相对列宽由相对 DataGridViewColumn.FillWeight 属性值决定。  

7、None 列宽不会自动调整。  

8、NotSet 列的大小调整行为从 DataGridView.AutoSizeColumnsMode 属性继承。

使用方法举例:

 this.IssuesDataGridView.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill;

其他方法见相关文档:
dataGridView 控件调整行宽大小
DataGridView控件使用大全     (这篇比较长,可以使用
ctrl+F 来search 关键字AutoSizeColumnsMode。)

//添加序号 (不影响数据)

        private void dataGridView1_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)

        {

            SolidBrush b = new SolidBrush(this.dataGridView1.RowHeadersDefaultCellStyle.ForeColor);

            e.Graphics.DrawString((e.RowIndex + 1).ToString(System.Globalization.CultureInfo.CurrentUICulture), this.dataGridView1.DefaultCellStyle.Font, b, e.RowBounds.Location.X + 30, e.RowBounds.Location.Y + 4);

        }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: