關於dataGridView動態列加載的幾個方法


第一種方法:

for循環dataGridView1行,然后添加如下代碼,dataGridView1[int columnIndex,int rowIndex].value="aaa";columnIndex表示列,rowIndex表示行。這種方法還有一個重載:dataGridView1[string columnName,int rowIndex].value="aaa";但是我測試了好幾遍,前台總是顯示不了列對應的值"aaa",百思不得其解,不知道是我哪里出了問題,歡迎高手指正。

第二種方法:

跟第一種方法類似,同樣先for循環dataGridView1行,然后添加代碼dataGridView1.Rows[i].Cells[0].Value = "aaa",前台還是跟第一種方法一樣,無法顯示動態綁定的列值"aaa";我講代碼貼出來,希望有高手看到告知一下小弟是哪里的問題?代碼如下:

void DataBind()
        {
            ConnDatabase dago = new ConnDatabase();//連接數據庫的類
            DataTable dt = dago.TestReadAllTable();                       
            dataGridView1.AutoGenerateColumns = true;
            for(int i=0;i<dataGridView1.Rows.Count;i++)
            {
                dataGridView1["行號", i].Value = "aaa";//第一種方法
                dataGridView1.Rows[i].Cells[0].Value = "aaa";//第二種方法
            }
            dataGridView1.DataSource = dt;
        }

這兩種方法都以失敗告終,木辦法啦,使出最后的殺手鐧。

第三種方法:

先修改DataTable表,然后再綁定,先在DataTable中新增一列,代碼DataTable.Columns.Add("newCol");然后for循環DataTable行,綁定值,代碼DataTable.Rows[i]["newCol"] = "aaa";最后將數據源綁定到DataTable即可,代碼:dataGridView1.DataSource = DataTable。

代碼如下:

void DataBind()
        {
            ConnDatabase dago = new ConnDatabase();//連接數據庫的類
            DataTable dt = dago.TestReadAllTable();                       
            dataGridView1.AutoGenerateColumns = true;
             dt.Columns.Add("newCol");
            for (int i = 0; i < dt.Rows.Count ; i++)
            {
                dt.Rows[i]["newCol"] = i;
            }

            dataGridView1.DataSource = dt;
        }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM