C# 跟踪列表框中的项目
我是.net新手,为了好玩而开始一个项目。 我正在使用一些城市名称填充的列表框,以便用户可以选择一个。 每个城市类都有名称和UID。我如何知道哪个城市的用户点击了? 显然,我可以获得所选项目的文本,浏览城市列表和 找到一个名字,但这似乎很愚蠢 是否有等同于MFC SetItemDataPtr类型的东西或是什么C# 跟踪列表框中的项目,c#,.net,winforms,C#,.net,Winforms,我是.net新手,为了好玩而开始一个项目。 我正在使用一些城市名称填充的列表框,以便用户可以选择一个。 每个城市类都有名称和UID。我如何知道哪个城市的用户点击了? 显然,我可以获得所选项目的文本,浏览城市列表和 找到一个名字,但这似乎很愚蠢 是否有等同于MFC SetItemDataPtr类型的东西或是什么 最常用的方法是什么?您可以通过以下代码获得用户选择的项目: list1.SelectedItem; //text -> list1.SelectedItem.Text //valu
最常用的方法是什么?您可以通过以下代码获得用户选择的项目:
list1.SelectedItem;
//text -> list1.SelectedItem.Text
//value-> list1.SelectedItem.Value
您可以通过以下代码获取用户选择的项目:
list1.SelectedItem;
//text -> list1.SelectedItem.Text
//value-> list1.SelectedItem.Value
假设您引用的是WinForms,可以通过以下方式完成
与其将
列表框的项设置为字符串的数组/集合(我假设您当前正在这样做),不如将其设置为用户定义类型的集合(City
),然后使用属性(设置为Name
或要显示的City
类的任何属性),这样,列表框
中的每个项目实际上都可以作为用户定义的城市
对象进行访问,而它仍然通过其名称
属性进行显示。假设您引用的是WinForms,可以通过以下方式进行操作
与其将列表框的项设置为字符串的数组/集合(我假设您当前正在这样做),不如将其设置为用户定义类型的集合(City
),然后使用属性(设置为Name
或要显示的City
类的任何属性),这样,列表框
中的每个项目实际上都可以作为用户定义的城市
对象访问,而它仍然通过其名称
属性显示。您可以为列表框提供自己定义的项目类型,因为它接受对象
,最好实现ToString()
方法。它可以是具有ID和Name属性的对象,因此可以使用ListBox的SelectedItem
属性访问它们。您可以为ListBox提供自己定义的项目类型,因为它接受对象,最好实现ToString()
方法。它可以是具有ID和Name属性的对象,因此可以使用ListBox的SelectedItem属性访问它们。我将使用ListView(在详细信息模式下)而不是ListBox。然后您可以使用ListViewItem的Tag属性,它相当于MFC的SetItemDataPtr。我将使用ListView(在详细信息模式下)而不是ListBox。然后,您可以使用ListViewItem的Tag属性,它相当于MFC的SetItemDataPtr。这正是我要找的。谢谢!这正是我要找的。谢谢!我只是在搜索这个:)谢谢!我只是在搜索这个:)谢谢!