dataGridView行号显示以及datagridview中数据不发生覆盖解决方案

来源:互联网 发布:linux服务器建站 编辑:程序博客网 时间:2024/06/05 09:15

DataGridView在RowPostPaint事件中设置行号:

  1. private void dgGrid_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)  
  2. {  
  3.     var grid = sender as DataGridView;  
  4.     var rowIdx = (e.RowIndex + 1).ToString();  
  5.   
  6.     var centerFormat = new StringFormat()   
  7.     {   
  8.         // right alignment might actually make more sense for numbers  
  9.         Alignment = StringAlignment.Center,   
  10.         LineAlignment = StringAlignment.Center  
  11.     };  
  12.   
  13.     var headerBounds = new Rectangle(e.RowBounds.Left, e.RowBounds.Top, grid.RowHeadersWidth, e.RowBounds.Height);  
  14.     e.Graphics.DrawString(rowIdx, this.Font, SystemBrushes.ControlText, headerBounds, centerFormat);  

  15. 在datagridview中为了使每次查询到的数据不覆盖以前的数据,可以看看代码中有没有this. datagridview.clear这样的代码,将这行代码去掉就能保证数据不发生覆盖(纯属自己做小程序时的经验)
原创粉丝点击