Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 未在windows窗体datagrid中插入行_C#_Winforms_Datagrid_Datatable - Fatal编程技术网

C# 未在windows窗体datagrid中插入行

C# 未在windows窗体datagrid中插入行,c#,winforms,datagrid,datatable,C#,Winforms,Datagrid,Datatable,我想使用datatable插入数据网格,并在程序中定义网格列。请帮帮我这个代码怎么了??? 出现以下错误“无法将System.String类型的对象强制转换为System.String[]类型” 我想说rowArray是一个字符串而不是字符串[]。您正在迭代一个对象[],并将该数组中的元素视为字符串[],该数组的元素0肯定是字符串,而不是字符串[] 我认为,根据您所写的内容,您打算做的是在DataGridView中插入一行,因为dRows只保留一个表行。您的代码部分来自MSDN示例,如果您查看该

我想使用datatable插入数据网格,并在程序中定义网格列。请帮帮我这个代码怎么了??? 出现以下错误“无法将System.String类型的对象强制转换为System.String[]类型”


我想说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);