在 C# 中进行了一段时间的编程后,我发现当组合框中的项目相同时,我们无法获得正确的 selectedIndex。
想象一下,我们有带有这些项目的 ComboBox:

当我在 ComboBox 中选择第三个项目时,我想收到 2,但我总是收到 0。
当我在 ComboBox 中选择第五项时,我想收到 4,但我总是收到 3。

我认为 SelectedIndex 中的 ComboBox 总是返回 ComboBox 的第一个元素。

如何从具有相等项目的组合框中获取选定项目索引?

最佳答案

我怀疑您绑定(bind)到列表字符串。
String 是一种引用类型,但它会覆盖 = 并找到第一个值匹配。
创建一个只有一个字符串属性的简单类。

public class SimpleString
{
    public string StrValue { get; set; }
    public SimpleString() { }
    public SimpleString(string strValue) { StrValue = StrValue;  }
}

关于c# - 在某些情况下,组合框中的 selectedIndex 不会返回正确的整数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15343308/

10-12 00:01
查看更多