0

我尝试在 C# 中的 DataGridView 中显示数据,但它根本无法显示任何内容。我的 DataGridView 位于私有静态 void 函数内。

private static void processsub(Event a , Session session)
{ 
   List<String[]> lista = new List<string[]>();
   lista.add(new string[] {text1, text2, text3, text4, text5, text6, text7 });
   Form1 frm1 = newForm1();
   frm1.dataGridView1.AutoGenerateColumns=true;
   DataTable table = ConvertListtoDatTable(lista);
   frm1.dataGridview1.DataSource = table;
}

我使用消息框窗口来显示“.Row[0].Cell[0].Value.ToString()”,它显示了正确的值,但 DataGridView 只是没有显示数据。

有人有什么建议吗?

4

1 回答 1

0

您可能不会分散行。我的测试代码如下。

   private void processsub()
    {
        List<String[]> lista = new List<string[]>();
        lista.Add(new string[] { "text1", "text2", "text3", "text4", "text5", "text6", "text7" });
        dataGridView1.AutoGenerateColumns = true;
        DataTable table = ConvertListtoDatTable(lista);
        dataGridView1.DataSource = table;
    }

    private DataTable ConvertListtoDatTable(List<String[]> lista)
    {
        DataTable table = new DataTable();
        int columnCount = lista[0].Length;
        for (int columnIndex = 0; columnIndex < columnCount; columnIndex++)
        {
            table.Columns.Add();
        }
        foreach (string[] row in lista)
        {
            table.Rows.Add(row);
        }
        return table;
    }

    private void buttonTest_Click(object sender, EventArgs e)
    {
        processsub();
    }

执行结果: 在此处输入图像描述

于 2013-08-02T05:35:14.923 回答