C#開發之DataGridView填充數據使用小結


//實例說明:數據大約8173條,顯示在DataGridView上
            //以下采用兩種方法:
            //第一種采用DataSource的方式賦值,顯示到dataGridView1
            //第二種方式采用foreach循環遍歷逐行賦值,顯示到dataGridView2上
            //優缺點:
            //第一種,顯示速度快,只能顯示數據源中的數據,不夠靈活
            //第二種,顯示的數據靈活,數據量大時,填充數據慢
 
            //1.獲取數據
            DataTable dt = new DataTable();
            dt = GetTargetDatas();
 
            //2.賦值,第一種方法
            FillDataGridViewWithDataSource(dataGridView1, dt);
 
            //2.賦值,第二種方法
            FillDataGridViewWithForeach(dataGridView2, dt);

 

private void FillDataGridViewWithDataSource(DataGridView dataGridView,DataTable dTable)
        {
            //1.清空舊數據
            dataGridView.Rows.Clear();
            //2.填充新數據
            if (dTable != null && dTable.Rows.Count > 0)
            {
                //設置DataGridView列數據
                dataGridView.Columns["ITEM_NO"].DataPropertyName = "ITEM_NO";
                dataGridView.Columns["ITEM_NAME"].DataPropertyName = "ITEM_NAME";
                dataGridView.Columns["INPUT_CODE"].DataPropertyName = "INPUT_CODE";
 
                //設置數據源,部分顯示數據
                dataGridView.DataSource = dTable;
                dataGridView.AutoGenerateColumns = false;
            }
        }

 

private void FillDataGridViewWithForeach(DataGridView dataGridView, DataTable dTable)
        {
            //1.清空舊數據
            dataGridView.Rows.Clear();
            //2.賦值新數據
            foreach (DataRow row in dTable.Rows)
            {
                int index = dataGridView.Rows.Add();
                dataGridView.Rows[index].Cells["ITEM_NO2"].Value = row["ITEM_NO"];
                dataGridView.Rows[index].Cells["ITEM_NAME2"].Value = row["ITEM_NAME"];
                dataGridView.Rows[index].Cells["INPUT_CODE2"].Value = row["INPUT_CODE"];
            }
        }

 總結:顯示效果相同,第一種速度快,不夠靈活,第二種顯示數據靈活但是速度不快


免責聲明!

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



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