组合框重新排列c#

时间:2017-04-09 06:25:20

标签: c#

我一直在尝试实现一个组合框,它会按顺序列出1-30的数字,但是当应用程序加载时它会不断重新排列。我已经筋疲力尽了。

以下是我尝试过的众多其他代码:

方法1:

for (int i = 1; i <= 30; i++)
{
   string[] numbers = { i.ToString() };
   cmbYOWE.Items.AddRange(numbers);
}

方法2:

cmbYOWE.Items.AddRange(System.Linq.Enumerable.Range(1, 30).Select(i => (object)i).ToArray());

其中cmbYOWE是我的组合框控件的代号。

顺序应该是这样的:1 2 3 4 5 6 7 8 9 10 11等等 但相反,它安排如下:1 10,11,12,13,14,15,16,17,18,19,2,20,21,22,23,24等等

2 个答案:

答案 0 :(得分:-1)

试试这个。这很简单!

for (int i = 1; i < 31; i++)
{
    cmbYOWE.Items.Add(i.ToString());
}

答案 1 :(得分:-1)

这可能是一个不同的问题。您可能在应用程序中使用线程/ Ajax代码,这会扰乱订单。

无论如何,扩展你的方法2,如果允许排序,你可以试试吗。

var numbers = System.Linq.Enumerable.Range(1, 30).Select(i (object)i).ToArray();
Array.Sort(numbers);
comboBox1.Items.AddRange(numbers);
comboBox1.Sorted = false;