【发布时间】:2013-11-11 22:33:24
【问题描述】:
我在单独的标签中有 5 个随机数,并希望将它们从最低到最高排序并将它们放入新标签中。
示例: 随机数为 1 - 60 的标签。
number1.Text = 42
number2.Text = 51
number3.Text = 12
number4.Text = 33
number5.Text = 26
我想将这些数字从最低到最高分别放在单独的标签中。
例子:
sortNumber1.Text = 12
sortNumber2.Text = 26
sortNumber3.Text = 33
sortNumber4.Text = 42
sortNumber5.Text = 51
到目前为止,我尝试使用以下代码将所有排序的数字放在一个标签中:
private void button63_Click(object sender, EventArgs e)
{
var orderNumber1 = Convert.ToInt32(number1.Text);
var orderNumber2 = Convert.ToInt32(number2.Text);
var orderNumber3 = Convert.ToInt32(number3.Text);
var orderNumber4 = Convert.ToInt32(number4.Text);
var orderNumber5 = Convert.ToInt32(number5.Text);
int[] numbers = { orderNumber1, orderNumber2, orderNumber3, orderNumber4, orderNumber5};
Array.Sort(numbers);
int i = 0;
for (i = 0; i < numbers.Length; i++)
{
selected_number1.Text = (numbers[i].ToString());
}
}
但只输入了最后一个(最高的)数字。如果某件事没有任何意义,那是因为我是菜鸟。我会理解的解决方案会很棒。谢谢你。
【问题讨论】:
-
创建一个 List
并将文本解析为整数,然后使用排序函数。 -
你只更新了一个标签,selected_number1.. 你不应该更新所有标签吗?
-
我会创建
List<int>,然后使用OrderByDescending<>函数对它们进行排序。 -
感谢您的回答。 MarcinJuraszek aneser 正确 :) 感谢您的帮助