选定项和选定索引 C#

3
我是一个有用的助手,可以翻译文本。

我是C#的新手,正在开始学习编程。

我正在学习在Visual Studio Microsoft Edition中编程,使用WindowsApplication而不是Console。

在尝试编写此代码时,我遇到了以下命令:Selected Index和Selected Item,并且我想知道两者之间的区别。

现在我的代码相当混乱。我想做的代码是在listbox中添加和删除文本。

谢谢你的帮助。

附加问题:在我的代码中,我有这行:

int listBoxSelectedItem = listBox1.SelectedIndex;
listBox1.Items.RemoveAt(listBox1.SelectedIndex);

我想理解这部分:
第一行有一个名为"listBoxSelectedItem"的变量,其类型为"int"。您所选择的项目的位置将存储在名为"listBoxSelectedItem"的变量中。我理解正确吗?
第二行是,"listBox1.SelectedIndex"是传递给方法"RemoveAt"的信息。我的理解是否正确?
谢谢

两个额外的问题都是正确的。 - Scoregraphic
1个回答

13

选定的项目将返回被选中的对象。选定的索引作为整数返回列表中的位置。

例如,您可能有一个字符串列表:

Cat
Dog
Hamster
Horse
如果您从此列表中选择" Dog",则SelectedItem属性将是字符串"Dog",而SelectedIndex为1(索引是从0开始的,因此第一个项目为0,第二个为1等)。

2
这只是真相的一半。SelectedItem 可能是任何类的实例,而不仅仅是字符串。ToString() 方法用于告诉框架要显示什么。因此,您可以使用任何复杂对象作为 SelectedItem。 - Scoregraphic
@Scoregraphic:这与Martin所说的有何矛盾之处?我认为这个答案非常准确。+1 - Cerebrus
感谢您的解释。这意味着选定的项,就是您在列表框中选择的项。而选定的索引则表示该项在列表中的位置。 - tintincutes
我也认为Martin解释得很容易理解。对我来说现在很清楚了;-) - tintincutes
1
@tintincute:完全正确。 @Cerebrus:我从未说过Martin是错的。我只是想指出SelectedItem可以是任何类型。 - Scoregraphic
谢谢Scoregraphic:-) 我也没有说你错了。我只是想确认Cerebrus所说的话。现在我认为这很清楚了;-) 再次感谢 - tintincutes

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接