C# 未在windows窗体datagrid中插入行
我想使用datatable插入数据网格,并在程序中定义网格列。请帮帮我这个代码怎么了??? 出现以下错误“无法将System.String类型的对象强制转换为System.String[]类型”C# 未在windows窗体datagrid中插入行,c#,winforms,datagrid,datatable,C#,Winforms,Datagrid,Datatable,我想使用datatable插入数据网格,并在程序中定义网格列。请帮帮我这个代码怎么了??? 出现以下错误“无法将System.String类型的对象强制转换为System.String[]类型” 我想说rowArray是一个字符串而不是字符串[]。您正在迭代一个对象[],并将该数组中的元素视为字符串[],该数组的元素0肯定是字符串,而不是字符串[] 我认为,根据您所写的内容,您打算做的是在DataGridView中插入一行,因为dRows只保留一个表行。您的代码部分来自MSDN示例,如果您查看该
我想说rowArray是一个字符串而不是字符串[]。您正在迭代一个
对象[]
,并将该数组中的元素视为字符串[]
,该数组的元素0肯定是字符串
,而不是字符串[]
我认为,根据您所写的内容,您打算做的是在DataGridView中插入一行,因为dRows只保留一个表行。您的代码部分来自MSDN示例,如果您查看该示例的工作原理,您将看到它们构建了一组string[]
来向DataGridView添加未绑定的行
这就是你想在这里做的吗?是否添加未绑定的行?您已经有了一个数据表
。您可以使用数据绑定来解决这个问题,而不是从数据库中检索数据,然后将其复制到一个对象[]
中,然后将其放在一个未绑定的DataGridView中
你可以这样做:
string[] myRow = new string[] { dRows[0].ToString(), dRows[1].ToString(), dRows[2].ToString(), dRows[3].ToString() };
dataGridView1.Rows.Add(myRow);
我想这会管用的。我没试过,但我想可以。但是如果我这样做的话,我可能会设置数据绑定。如果给出的答案中有任何一个回答了问题,请接受您现有的回答问题!
string[] myRow = new string[] { dRows[0].ToString(), dRows[1].ToString(), dRows[2].ToString(), dRows[3].ToString() };
dataGridView1.Rows.Add(myRow);