日期:2014-05-17  浏览次数:21082 次

dataGridView如何循环增加多行
dataGridView1.DataSource = item;(40行)

我想 for(int i=0;i<20;i++){

dataGridView1.DataSource = item;

}

------解决方案--------------------
数据源是datatable的话
C# code

        public void LoadDataGridViewData(DataGridView view, DataTable table)
        {
            view.Rows.Add(20);
            int index = 0;
            foreach (DataRow row in table.Rows)
            {
                DataGridViewRow viewRow = view.Rows[index];

                for (int j = 0; j < view.Columns.Count; j++)
                {
                    if (!String.IsNullOrEmpty(view.Columns[j].DataPropertyName) && row.Table.Columns.Contains(view.Columns[j].DataPropertyName))
                        viewRow.Cells[j].Value = row[view.Columns[j].DataPropertyName];
                }
                index++;
            }
        }
        LoadDataGridViewData(dataGridView1, dt);

------解决方案--------------------
view.Rows.Add(20)改成view.Rows.Add(40),外面再套一个for循环,像你写的那样就行了
------解决方案--------------------
C# code
 DataTable dt = new DataTable();      
 for(int i=0;i<20;i++){
 dt.Merge(item);
}

dataGridView1.DataSource = dt;

------解决方案--------------------
DataTable dt = item.Clone();
dataGridView1.DataSource = dt;

for (int i = 0; i < 20; i++)
{
/*更新item*/
dt.Merge(item.Clone());
}

我自己的电脑不在我手上,别人的电脑没有环境我也不好测试,希望这样可以对你有帮助(这里的item是可以不断更新的,当然这只是简略的写一下)
------解决方案--------------------
每40条数据放在dataset的一个表里
C# code

for(int i=0;i<20;i++)
{
dataGridView1.DataSource = dataset1.Tables[i];
}

------解决方案--------------------
探讨

引用:

数据源是datatable的话
C# code

public void LoadDataGridViewData(DataGridView view, DataTable table)
{
view.Rows.Add(20);
int index = 0;
foreach (DataRo……
我的意思是循环20次 每次添加40行

------解决方案--------------------
说的 很对呀 但是我这里 数据 获取 不是同步的
先获取40条,显示到DataGridView,然后在获取40条,再动态补增到DataGridView,依次 循环

不懂你什么不同步~

每次只要把所有的数据加载就OK 了