Я пытаюсь пересортировать свой список при добавлении / удалении из него путем сохранения в списке, а затем сортировки. Когда я запускаю свое приложение, новые элементы, добавленные в список, всегда добавляются внизу, а не сортируются.
FileCabinetsRetreived - мой первый список, а FileCabinetsToAdd - мой второй список.
private void addBttn_Click(object sender, RoutedEventArgs e)
{
List<string> allItems = new List<string>();
List<string> addedItems = new List<string>();
List<string> remainingItems = new List<string>();
//adding all items in FileCabinetsretreived into allItems list
foreach (var item in FileCabinetsRetrieved.Items)
{
allItems.Add(item.ToString());
}
//sorting all items list
allItems = allItems.OrderBy(x => x).ToList();
//adding Selected items to addedItems list
foreach (var item in FileCabinetsRetrieved.SelectedItems)
{
addedItems.Add(item.ToString());
}
//sorting addedItems list
addedItems = addedItems.OrderBy(x => x).ToList();
// creating list of remaining items = allitems - addedItems
remainingItems = allItems.Except(addedItems).ToList();
//sorting remainingItems list
remainingItems = remainingItems.OrderBy(x => x).ToList();
//adding list of selected items to the FileCabinetsToAdd list
foreach (var item in addedItems)
{
FileCabinetsToAdd.Items.Add(item);
}
//clearing FileCabinetsRetreived list
FileCabinetsRetrieved.Items.Clear();
//adding remainingItems list to FileCabinetsRetreived list
foreach (var item in remainingItems)
{
FileCabinetsRetrieved.Items.Add(item.ToString());
}
}