Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/269.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# 如何向datagridview中的特定列添加数据?_C#_.net_Datagridview - Fatal编程技术网

C# 如何向datagridview中的特定列添加数据?

C# 如何向datagridview中的特定列添加数据?,c#,.net,datagridview,C#,.net,Datagridview,我已经制作了3个元素列表,我想在datagridview中插入这些元素, 但问题是,当我尝试在datagrid中插入数据时,会收到类似的结果 因此,为了插入数据,我使用了以下代码: IList<string> ruas = new List<string>(); foreach (var element in Gdriver.FindElements(By.ClassName("search-title"))) {

我已经制作了3个元素列表,我想在datagridview中插入这些元素,

但问题是,当我尝试在datagrid中插入数据时,会收到类似的结果

因此,为了插入数据,我使用了以下代码:

        IList<string> ruas = new List<string>();
        foreach (var element in Gdriver.FindElements(By.ClassName("search-title")))
        {
            //ruas.Add(element.Text);
            table.Rows.Add(element.Text);


        }


        IList<string> codps = new List<string>();
        foreach(var Codpelement in Gdriver.FindElements(By.ClassName("cp")))
        {

            table.Rows.Add("",Codpelement.Text);

        }

        IList<string> Distritos = new List<string>();
        foreach (var Distritoelement in Gdriver.FindElements(By.ClassName("local")))
        {


            //Distritos.Add(Distritoelement.Text);
            table.Rows.Add("","",Distritoelement.Text.Substring(Distritoelement.Text.LastIndexOf(',') + 1));

        }
IList ruas=new List();
foreach(Gdriver.FindElements(By.ClassName(“搜索标题”))中的var元素)
{
//添加(element.Text);
table.Rows.Add(element.Text);
}
IList codps=新列表();
foreach(Gdriver.FindElements(By.ClassName(“cp”))中的var codeplement)
{
table.Rows.Add(“,Codpelement.Text”);
}
IList Distritos=新列表();
foreach(Gdriver.FindElements(By.ClassName(“local”))中的var Distritoelement)
{
//Distritos.Add(Distritoelement.Text);
table.Rows.Add(“,”,Distritoelement.Text.Substring(Distritoelement.Text.LastIndexOf(“,”)+1));
}
你能告诉我一个更好的方法让数据从上到下显示吗


谢谢。

问题是每行输入一个值。您总共应该有三行,但有3*numberofcolumns行。我建议采用以下方法代替您目前的方法:

    IList<string> ruas = new List<string>();
    foreach (var element in Gdriver.FindElements(By.ClassName("search-title")))
    {
        ruas.Add(element.Text);
    }


    IList<string> codps = new List<string>();
    foreach(var Codpelement in Gdriver.FindElements(By.ClassName("cp")))
    {
        codps.Add(Codpelement.Text);
    }

    IList<string> Distritos = new List<string>();
    foreach (var Distritoelement in Gdriver.FindElements(By.ClassName("local")))
    {
        Distritos.Add(Distritoelement.Text.Substring(Distritoelement.Text.LastIndexOf(',') + 1));
    }

    for (int i = 0; i < ruas.Count; i++) {
        table.Rows.Add(ruas.ElementAt(i), codps.ElementAt(i), Distritos.ElementAt(i));
    }
IList ruas=new List();
foreach(Gdriver.FindElements(By.ClassName(“搜索标题”))中的var元素)
{
添加(element.Text);
}
IList codps=新列表();
foreach(Gdriver.FindElements(By.ClassName(“cp”))中的var codeplement)
{
codps.Add(Codpelement.Text);
}
IList Distritos=新列表();
foreach(Gdriver.FindElements(By.ClassName(“local”))中的var Distritoelement)
{
Add(Distritoelement.Text.Substring(Distritoelement.Text.LastIndexOf(',')+1));
}
对于(int i=0;i
最好创建一个datatable,然后将datatable作为DGV的数据源。感谢您的提问!你能告诉我,为什么在collumn“Distritos”的第一行没有显示任何数据吗?@PedroAlvim不客气。如果不知道您拥有的发行版的实际数据,就很难判断。Rua do Monte的Distrito可能以逗号结尾,后面有一些空格,正如在您的算法中,我们得到的Distrito部分位于最后一个逗号之后,请参见:Distritoelement.Text.Substring(Distritoelement.Text.LastIndexOf(','))+1)我认为selenium的类名选择器有问题,因为我把它改成了XPath,它工作得很好。