代码之家  ›  专栏  ›  技术社区  ›  I. J. Kennedy ShankarSangoli

小的、可编辑的字符串表。我要哪个窗体控件?(.net)

  •  0
  • I. J. Kennedy ShankarSangoli  · 技术社区  · 15 年前

    我有一个结构的小数组,每个结构有三个字段,所有字符串。我想在网格中显示这些结构,让用户在一个Excel中编辑字符串,然后检索编辑过的字符串。哪个WinForms控件最适合此操作?

    尝试了DataGridView,但将数据源设置为结构数组似乎不起作用。有无数的控件有相似的名称,但我不知道做什么。我发现的所有示例都是面向使用数据库作为数据源的——我只有一个简单的数组。

    3 回复  |  直到 15 年前
        1
  •  0
  •   shf301    15 年前

    问题是,数据绑定只适用于属性,而不适用于字段。我假设你的课看起来像:

    class Strings {
        public string S1;
        public string S2;
        public string S3;
    }
    

    将公共字段更改为属性,例如

    class Strings {
        public string S1 { get; set; }
        public string S2 { get; set; }
        public string S3 { get; set; }
    }
    

    您应该发现可以将数组数据绑定到DataGridView。

        2
  •  1
  •   jrista    15 年前

    通过拥有一个充满字符串的结构,实际上并没有获得太多。这只需在堆栈上推送一个3指针块,指针指向堆。您最好使用一个类,因为您将消耗较少的堆栈空间,并且最终效率更高,在这之后,您应该能够很好地绑定DataGridView。

        3
  •  1
  •   Andrew Keith    15 年前

    你试过ListView吗?

    您可以像这样添加字符串。

    foreach(Data d in datas)
    {
      ListViewItem item =new ListViewItem(d.first);
     item.SubItems.Add(d.second);
    item.SubItems.Add(d.third);
    
    listview.Items.Add(item);
    }
    

    有一些选项可以对字符串进行内联编辑。我不记得是哪一个选项,然后在用户编辑之后,只需重新读取值。