我一直在尝试实现一个组合框,它会按顺序列出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等等
答案 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;