Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/40: Рейтинг темы: голосов - 40, средняя оценка - 4.88
1 / 1 / 1
Регистрация: 14.10.2016
Сообщений: 64

Сортировка в listBox

08.02.2017, 02:14. Показов 8369. Ответов 10

Студворк — интернет-сервис помощи студентам
Содержимое текстового файла:
417 Казань-Бугульма 08.02.17
312 Уфа-Рязань 10.02.17
654 Ноябрьск-Тюмень 11.02.17
777 Москва-Питер 08.02.17
417 Бугульма-Чебоксары 09.02.17
654 Тюмень-Рязань 12.02.17
417 Казань-Бугульма 15.02.17
417 Бугульма-Казань 08.02.17

Это выводится на listBox, нужно чтобы сортировалась по датам, как это делается, подскажите?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.02.2017, 02:14
Ответы с готовыми решениями:

Сортировка в ListBox
Как отсортировать в случайном(random) порядке строки в ListBox по нажатию на Button? Данные в ListBox добавляются с помощью...

Сортировка listBox'a
Здравствуйте, прошу помочь с сортировкой listbox. сам изучаю с# второй день и не знаю, каким способом это сделать, в интернете пытался...

Сортировка чисел из listBox
Здравствуйте, только начал изучать WinForm, задание такое. Есть ли среди первых 5 чисел хотя бы одно нечетное, если есть, то эти 5 чисел...

10
 Аватар для Shogun31337
557 / 534 / 225
Регистрация: 02.11.2016
Сообщений: 1,538
08.02.2017, 09:27
Как вариант, можно создать класс, каждое поле которого будет хранить определенную часть строки, разделить строки Split'ом и создать список (List<T>) экземпляров класса, предварительно приведя часть с датой к типу DateTime. После этого Вы сможете сортировать список по дате. А уже отсортированный список использовать для listBox'а в качестве DataSource.
0
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
08.02.2017, 15:17
сортировать можно так, пример, правда, консольный, но смысл тот же
C#
1
2
3
4
5
6
        var array = File.ReadAllLines(@"c:\1.txt",Encoding.Default);
        Console.WriteLine(String.Join("\n",array));
        Console.WriteLine();
        var sorted = array.OrderBy(c => DateTime.Parse(c.Split()[2])).ToList();
        Console.WriteLine(String.Join("\n",sorted));
        Console.ReadKey(true);
0
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
08.02.2017, 18:21
Diamante,
А если внезапно:
666 Кривой Рог-Нижний Новгород 08.02.2017
1
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
08.02.2017, 18:33
Даценд, согласен, ценное замечание, но я ориентировался на приведенный ТСом текст, и выдавал, скорее идею, нежели реализацию, если пробелов больше, то можно так
C#
1
var sorted = array.OrderBy(c => DateTime.Parse(c.Split().Last())).ToList();
0
 Аватар для Shogun31337
557 / 534 / 225
Регистрация: 02.11.2016
Сообщений: 1,538
08.02.2017, 18:41
Даценд, а так не честно!!!
тогда может так:
C#
1
var sorted = array.OrderBy(c => DateTime.Parse(c.Substring(c.Length - 8))).ToList();
Формат даты в исходном файле, надеюсь, не может внезапно поменяться?
0
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
08.02.2017, 18:48
Shogun31337,
Внезапно не может
Только в дате больше 8-ми символов. Может c.Length - 10?
0
 Аватар для Shogun31337
557 / 534 / 225
Регистрация: 02.11.2016
Сообщений: 1,538
08.02.2017, 19:04
Цитата Сообщение от Даценд Посмотреть сообщение
Только в дате больше 8-ми символов
Ну это смотря какую дату брать. У ТС как раз 8 символов. Если на входе будет Ваш пример, то, разумеется, c.Length - 10.
1
1 / 1 / 1
Регистрация: 14.10.2016
Сообщений: 64
09.02.2017, 01:17  [ТС]
как много всего
как вот это все поместить сюда? вернее куда именно?
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 private void button2_Click(object sender, EventArgs e)
        {
            listBox1.Items.Clear();
            StreamReader read_text = new StreamReader(@"C:\Users\user\Documents\Visual Studio 2010\Projects\Проект АИС жд вокзала\БД.txt");
            while (!read_text.EndOfStream)
            {
                string str = read_text.ReadLine();
                string[] str1 = str.Split(' ');
                String NP = "";
                NP = textBox4.Text;
                if (str1[0] == NP)
                {
                    listBox1.Items.Add(str);
                }
                if (str1[1] == NP)
                {
                    listBox1.Items.Add(str);
                }
            }
            read_text.Close();
            if (listBox1.Items.Count == 0)
                listBox1.Items.Add("Нет данных!");
            textBox4.Clear();
        }
Добавлено через 13 минут
А вообще суть данной операции следующая: Пишем в текстбоксе то, что ищем, например номер маршрута: "417", жмем на кнопку, и на листбокс выводит только соответствующие строки. Поиск, одним словом. Ну и выводиться в листбокс должен в отсортированном по датам виде
0
 Аватар для Shogun31337
557 / 534 / 225
Регистрация: 02.11.2016
Сообщений: 1,538
09.02.2017, 07:32
Ну... Скорее всего, нужно сделать так: Приведенный Вами код убираете совсем. Он тут ни к чему. При загрузке формы загружаете список. Т.е. в обработчик события формы OnLoad пишете код, обсуждаемый в этой теме. А уже при нажатии на кнопку "Поиск", выясняете что хотел найти пользователь, ищете в списке нужные записи, сортируете их, если нужно, и выводите в свой листбокс. Вот как то так...
0
1 / 1 / 1
Регистрация: 14.10.2016
Сообщений: 64
09.02.2017, 16:50  [ТС]
Спасибо всем, кто откликнулся, помогли
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.02.2017, 16:50
Помогаю со студенческими работами здесь

Сортировка чисел в ListBox
Всем привет, помогите пожалуйста. Делаю сортировку чисел которые находятся в начале каждой строки, но она не работает потому что в ней есть...

Сортировка строк в listbox
Ребят помогите срочно с сортировкой в listbox в футболистов и баскетболистов.Много чего перепробывал, может у вас что то получтся

Сортировка по возрастанию n количества случайных чисел в listbox
Надо сортировать n количество случайных чисел в listbox по возрастанию. Заранее спасибо.

ListBox как сделать что бы элемент ListBox выполнял действия
на пример элемент ListBox очистил бы texbox

Сравнить два ListBox-а, совпадающие элементы вывести в третий ListBox
Друзья, есть два Listbox, в которых храниться значения = папка и путь( пример &quot;D:\папка) И во втором listbox папки как сравнить эти...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru