У меня есть проект, в котором хранятся элементы и данные элементов (число) с отсортированными причинами. У меня есть 2 объекта: 1.sorted Combobox, в котором хранятся элементы (имена) 2.sortedlist, который сохраняет элемент (имя) в качестве ключа и данные элемента (число) в качестве значения.
По какой-то причине некоторые символы (например, «-») не сортируются одинаково в комбо и в отсортированном списке. Комбинация сохраняет строку с «-» в первой строке или группе, в то время как в отсортированном списке он находится в последний ряд группы. это мой код:
public partial class Form1: Form
{
public Form1()
{
InitializeComponent();
}
SortedList<object, object> sortedvbcombo = new SortedList<object, object>();
private void Form1_Load(object sender, EventArgs e)
{
Data[] D = new Data[5];
D[0] = new Data();
D[0].name = "BABA";
D[0].number = 1000;
D[1] = new Data();
D[1].name = "B-REAL";
D[1].number = 1001;
D[2] = new Data();
D[2].name = "BCCDC";
D[2].number = 1002;
D[3] = new Data();
D[3].name = "BAAAAA";
D[3].number = 1003;
D[4] = new Data();
D[4].name = "BFFFFDS";
D[4].number = 1004;
comboBox1.Sorted = true;
for (int i = 0; i < D.Count(); i++)
{
comboBox1.Items.Add(D[i].name);
sortedvbcombo.Add(D[i].name, D[i].number);
}
}
}
struct Data
{
public string name;
public int number;
}
результат для поля со списком: B-REAL BAAAAA BABA BCCDC BFFFFDS
результат для отсортированного списка: BAAAAA BABA BCCDC BFFFFDS B-REAL, почему он не сортируется таким же образом и возможно ли выровнять его из свойств отсортированного списка? p.s. я знаю, что есть возможность использовать
sortedlist<object,object> srt = new sortedlist<object,object>(idictionary)
но не нашел как это реализовать