gpt4 book ai didi

c# - 带有 ListView 的 c sharp -winform 应用程序

转载 作者:行者123 更新时间:2023-11-30 21:57:39 24 4
gpt4 key购买 nike

我在 C sharp windows 窗体应用程序中有一个 ListView ,如下所示。 Form_load() 方法中有以下几行代码。

但问题是它不会从第一列开始插入一行。相反,它从第二列开始。因为传递到最后一列的值总是丢失。

        listView1.Columns.Add("ColumnOne", 150);
listView1.Columns.Add("ColumnTwo", 150);
listView1.Columns.Add("ColumnThree", 150);
listView1.Columns.Add("ColumnFour", 150);
listView1.Columns.Add("ColumnFive", 150);
listView1.Columns.Add("Column6", 150);

foreach (MyClass et in _myData)
{
ListViewItem lt = new ListViewItem();

lt.SubItems.Add(et.DataOne.ToString());

lt.SubItems.Add(et.DataTwo.ToString());
lt.SubItems.Add(et.DataThree.ToString());
lt.SubItems.Add(et.DataFour.ToLongDateString());
lt.SubItems.Add(et.DataFive);
lt.SubItems.Add(et.DataSix);
}

我尝试了所有可能的方法。我什至没有看到我犯了一个错误。有人可以给我一个解决方案吗?

最佳答案

当涉及到不同的列时,ListView 有点笨拙。 Detail View 第一列中显示的实际上是 ListViewItem 本身的文本,而不是第一个 SubItem。所以你想要做的是开始分配 DataTwo 等等到 subgroupsDataOneListViewItem.Text:

listView1.Columns.Add("ColumnOne", 150);
listView1.Columns.Add("ColumnTwo", 150);
listView1.Columns.Add("ColumnThree", 150);
listView1.Columns.Add("ColumnFour", 150);
listView1.Columns.Add("ColumnFive", 150);
listView1.Columns.Add("Column6", 150);

foreach (MyClass et in _myData)
{
ListViewItem lt = new ListViewItem(et.DataOne.ToString());

lt.SubItems.Add(et.DataTwo.ToString());
lt.SubItems.Add(et.DataThree.ToString());
lt.SubItems.Add(et.DataFour.ToLongDateString());
lt.SubItems.Add(et.DataFive);
lt.SubItems.Add(et.DataSix);

// I added this to your code
listView1.Items.Add(lt);
}

关于c# - 带有 ListView 的 c sharp -winform 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30558734/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com