c# - Dictionary <string,list <string =“”>&gt;到DataGrid

时间:2017-09-25 10:43:11

标签: c# dictionary datagridview datagrid

我有以下问题:

我有一个填充的列表字典,每个电梯都有一个指定的已知长度,并且只包含字符串,示例元素将是:

d1[key] = [ "Text1", "Text2", "Text3", "Text4", "0", "0", "0", "0", "0" ]

数据网格将具有与密钥对应的预先声明的列,以及8个列表元素中的每一个,总共9列。

我已经写过这个来尝试填充DataGrid,是否有更有效的方法,基本上将每一行写入数据网格。字典可能有超过1k键。

public static void DictionaryToDataGrid(Dictionary<string, List<string>> inputdict1)
    {
        Dictionary<string, List<string>> d1 = inputdict1;

        foreach (KeyValuePair<string, List<string>> item in d1)
        {
            DatagridForm.grid.Rows.Add(item.Key, item.Value[0], item.Value[1], item.Value[2]);
        }
    }

有更快,更有效的方法吗?谢谢。

1 个答案:

答案 0 :(得分:2)

较短的版本是:

    foreach (KeyValuePair<string, List<string>> item in inputdict1)
        DatagridForm.grid.Rows.Add(item.Key, item.Value[0], item.Value[1], item.Value[2]);

由于您未创建新变量 d1 ,并且引用 inputdict1 <的内容,因此效率也更高一些/ em> 到它(感谢apocalypse)。

希望这有帮助。