【问题标题】:How Pick a Column Value from a ListView Row - C#.NET如何从 ListView 行中选择列值 - C#.NET
【发布时间】:2010-05-22 17:50:10
【问题描述】:

alt text http://img153.imageshack.us/img153/9417/snapshotapp.jpg

  • 如何从所选行中将值 500 提取到变量中?

一种解决方案是获取行位置编号,然后获取 CustomerID 职位编号。能不能给个简单的解决办法。

  • SelectedItems 表示选定行,SubItems 表示列值,因此 SelectedItem 0 和 SubItem 0 表示值 500。对吗?

这就是我填充列表视图的方式:

            for (int i = 0; i < tempTable.Rows.Count; i++)
            {
                DataRow row = tempTable.Rows[i];

                ListViewItem lvi = new ListViewItem(row["customerID"].ToString());
                lvi.SubItems.Add(row["companyName"].ToString());
                lvi.SubItems.Add(row["firstName"].ToString());
                lvi.SubItems.Add(row["lastName"].ToString());

                lstvRecordsCus.Items.Add(lvi);
            }

【问题讨论】:

    标签: c# .net vb.net winforms


    【解决方案1】:

    如果你使用 DataGridView、BindingSource 和 texBoxes 的数据绑定,整个问题都会自动解决。
    您没有在这里使用数据绑定的任何原因?

    但是您也可以将您的 Row 对象分配给 ListViewItem.Tag 属性,这样可以更轻松地找到您的数据。

    【讨论】:

    • 我是新手,所以我只是尝试实现功能,然后我将专注于如何改进编码。根据要求,我必须使用 ListView 而不是 DataGridView
    • 但是您的 ListView 看起来就像一个网格。为什么不使用正确的工具?
    • 而且,以错误的方式“实现功能”可能会变得非常昂贵。最好提前考虑一下。
    • “错误的方式会变得非常昂贵”嗯,你是对的,我会重新看看它......
    • 基本上,我使用的是 ListView,因为记录将是只读的,所以 ListView 可以正常工作。我知道 GridView 和 ListView 之间的主要区别是 GridView 是读取/编辑的,而 ListView 是只读的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-08
    相关资源
    最近更新 更多