0

我正在构建一个 C# windows 窗体,它显示一个列表框,其中包含一些可供用户选择的项目。该选择将确定查询的标准。该查询将返回 2 个字段,一个 ID 和一个描述。我想在表单的第二个列表框中显示描述,但如果在列表框中选择了该描述,则使用 ID 进行后续处理。

以下是有关我要执行的操作的更多详细信息:

ListBox1
Accessories
Men's
Women's
Children

当用户选择“附件”时,查询运行并返回:

1234   Belts
2345   Scarves
4566   Handbags

ListBox2 显示描述

Belts
Scarves
Handbags

但是当用户双击腰带时,我想将 1234 添加到类实例中的字段中。我应该将查询结果放入什么样的列表中,以便我可以使用它来将项目添加到我的列表框中并且仍然能够知道 ID?

谢谢!莱斯利

4

2 回答 2

2

WinForms 和 WPF 都非常灵活。只需将 Accessory 对象添加到 Items 属性即可。或将 DataSource 设置为现有列表。

默认显示是通过,ToString()但您可以将 DisplayMember 设置为特定属性的名称。

您可以通过 SelectedItem 获取整个对象。和/或设置 ValueMember 并读取 SelectedValue。

于 2013-07-07T20:46:03.463 回答
2

在 .NET 列表框中,项目列表不仅仅是字符串列表,而是对象。组件将使用对象的字符串值进行显示,但您可以在查看所选值时引用 ID。

从而定义一个类

class Choices
{
   public string Name;
   public int ID;

   public override string ToString()
   {
      return name;
   }
}

用这个类的实例填充列表,你应该很高兴。

于 2013-07-07T20:48:06.527 回答