Winform 中DataGridView控件添加行标题

Posted 西枫叶落

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Winform 中DataGridView控件添加行标题相关的知识,希望对你有一定的参考价值。

有很多种方法。 

1、可以在DataGridView控件中的RowStateChanged事件改变行标题单元格的值(Row.HeaderCell.Value)

1         /// <summary>
2         /// 行状态更改时发生
3         /// </summary>
4         /// <param name="sender"></param>
5         /// <param name="e"></param>
6         private void dataGridView1_RowStateChanged(object sender, DataGridViewRowStateChangedEventArgs e)
7         {             
8    //e.Row.HeaderCell.Value = string.Format("{0}", e.Row.Index + 1); 9 e.Row.HeaderCell.Value = (e.Row.Index + 1).ToString();//添加行号 10 }

 

2、可以在DataGridView控件中的RowPostPaint事件例进行设置,TextRenderer类的DrawText()方法使用指定的设备上下文、字体、颜色和格式说明在指定界限中绘制指定文本。

 1         /// <summary>
 2         /// 所有单元格绘制后,执行 行绘制时发生
 3         /// </summary>
 4         /// <param name="sender"></param>
 5         /// <param name="e"></param>
 6         private void dataGridView1_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
 7         {
 8             //
 9             System.Drawing.Rectangle rectangle = new Rectangle(e.RowBounds.Location.X, e.RowBounds.Y, this.dataGridView1.RowHeadersWidth - 4, this.dataGridView1.ColumnHeadersHeight);
10             TextRenderer.DrawText(e.Graphics, (e.RowIndex + 1).ToString(), this.dataGridView1.RowHeadersDefaultCellStyle.Font, rectangle, this.dataGridView1.RowHeadersDefaultCellStyle.ForeColor, TextFormatFlags.VerticalCenter | TextFormatFlags.Right);//”TextFormatFlags.VerticalCenter | TextFormatFlags.Right“中“|”有增加的作用,此处添加了两种文本字符格式样式
11         }

 

以上是关于Winform 中DataGridView控件添加行标题的主要内容,如果未能解决你的问题,请参考以下文章

Winform DataGridView控件添加行号

winform中datagridview控件的列名怎样实现多表头?

winform DataGridView 动态添加一列控件(自定义控件)

Winform 下,两个不同窗体的DataGridView控件中的数据间传值怎么解决?

关于WinForm下DataGridView控件行的选择的问题

c#winFORM 的dataGridView 控件 单元格 颜色报警