今天在做一個簡單的DataGridView新增、修改、刪除功能時,發現在我增加一個ID欄位后所有的ColumnIndex出現位移,都增加了1,首先說明DataGridView的Columns我已經都綁定了并排序;
問題很明顯是增加了一個欄位出現的問題,我就開始排查:

1、檢查ColumnUI設置,沒有發現問題
【原創】SQL語句對DataGridView的Columns排序產生的影響

2、檢查 fr_Main.Designer.cs文件,也沒有發現問題
this.dataGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
            this.Column1,
            this.Column2,
            this.Column3,
            this.Column4,
            this.Column5,
            this.Column6,
            this.Column7,
            this.Column8,
            this.Column9});


只是發現因為Column9我沒有設置ColumnHeader,少了一個,增加上去還是沒有效果;

3、在我回頭檢查SQL語法時,發現了我增加的欄位ID,放置在select後面,難不成是這個影響了dataGridView的Columns排序
原語句:
            string strSQL = "select ID,trim(mr01) as mr01,trim(mr02) as mr02,trim(mr03) as mr03,mr04,mr05,trim(mr06) as mr06,mr07,mr08 ";

修改后:
            string strSQL = "select trim(mr01) as mr01,trim(mr02) as mr02,trim(mr03) as mr03,mr04,mr05,trim(mr06) as mr06,mr07,mr08,ID ";

此時一切正常;不知道大家有沒有遇到這么簡單的問題,感覺沒有面向dataGridView對象保持一致;

相关文章:

  • 2022-02-22
  • 2022-12-23
  • 2022-12-23
  • 2021-10-07
  • 2021-12-29
  • 2021-12-19
  • 2022-01-13
  • 2021-08-21
猜你喜欢
  • 2021-11-22
  • 2021-07-20
  • 2021-08-05
  • 2021-07-01
  • 2022-02-15
  • 2022-12-23
相关资源
相似解决方案