C# 当建议使用自动完成模式时,如何解决组合框中的C排序错误?

C# 当建议使用自动完成模式时,如何解决组合框中的C排序错误?,c#,C#,当将AutoCompleteMode与mode Suggest一起使用且AutoCompleteSource为ListItems时,组合框中的C中存在排序错误 例如: 组合框包含以下项: 斯维德伯格, 瑞典银行, 瑞典人 当在组合框中输入Sw时,我会得到两个建议项,瑞典银行和瑞典语。 问题是只显示瑞典银行。 似乎C将这些项排序为: 瑞典银行, 斯维德伯格, 瑞典人 如果我能用C语言来使用StringComparer.Ordinal,它会解决这个问题,因为Ordinal排序似乎工作得更好 有什么办

当将AutoCompleteMode与mode Suggest一起使用且AutoCompleteSource为ListItems时,组合框中的C中存在排序错误

例如: 组合框包含以下项: 斯维德伯格, 瑞典银行, 瑞典人

当在组合框中输入Sw时,我会得到两个建议项,瑞典银行和瑞典语。 问题是只显示瑞典银行。 似乎C将这些项排序为: 瑞典银行, 斯维德伯格, 瑞典人

如果我能用C语言来使用StringComparer.Ordinal,它会解决这个问题,因为Ordinal排序似乎工作得更好

有什么办法解决这个问题吗

System.Windows.Forms.ComboBox comboBox1; this.comboBox1 = new System.Windows.Forms.ComboBox(); this.comboBox1.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.Suggest; this.comboBox1.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems; this.comboBox1.FormattingEnabled = true; this.comboBox1.Items.AddRange(new object[] { "Svedberg", "Swedbank", "Swedish"}); this.comboBox1.Location = new System.Drawing.Point(142, 474); this.comboBox1.Name = "comboBox1"; this.comboBox1.Size = new System.Drawing.Size(121, 21); this.Controls.Add(this.comboBox1);
此代码适用于我:

        System.Windows.Forms.ComboBox comboBox1;
        comboBox1 = new System.Windows.Forms.ComboBox();
        comboBox1.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.Suggest;
        comboBox1.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems;
        comboBox1.FormattingEnabled = true;
        comboBox1.Items.AddRange(new object[] {
    "Svedberg",
    "Swedbank",
    "Swedish"});
        comboBox1.Location = new System.Drawing.Point(0, 0);
        comboBox1.Name = "comboBox1";
        comboBox1.Size = new System.Drawing.Size(121, 21);
        Controls.Add(comboBox1);
我做的唯一一件事就是删除这个引用

问候,,
M.

使用与否无关。问题可能出在区域性设置中。正确,但代码无法编译。我不认识特定于区域性的标记。没有一种文化会像瑞典银行那样对待瑞典人。