Так что я пытаюсь запустить форму Windows, в которую вы добавляете число из поля numericUpDown (из WindowsForm) и помещаете его в список (что мой код работает нормально).Пример того, как это выглядит в поле со списком:
7 5 10 1
, и при щелчке сортировка должна выглядеть так:
1 5 7 10
Когда я запускаю свой код и нажимаю кнопку сортировки (button1), чтобы отсортировать целые числа в окне списка, я получаю:
"System.InvalidException:" Невозможно привести объект типа 'System.Decimal 'для ввода' System.String '.
Я не уверен, что это значит ....
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace ListBoxSorter
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
//int num = (int)listBox1.Items[0];
//listBox1.Items.Add(num);
}
private void numericUpDown1_ValueChanged(object sender, EventArgs e)
{
//int number = (int)numericUpDown1.Value;
}
private void button1_Click(object sender, EventArgs e)
{
//listBox1.Items.Sort(numericUpDown1.Value);
List<int> ListB = new List<int>();
foreach (string x in listBox1.Items)
{
ListB.Add(Convert.ToInt32(x));
}
ListB.Sort();
}
private void button2_Click(object sender, EventArgs e)
{
listBox1.Items.Add(numericUpDown1.Value);
}
}
}