Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
2 / 2 / 0
Регистрация: 23.02.2014
Сообщений: 72
1

Перемешивание элементов в listbox

27.02.2014, 14:44. Показов 2549. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В listbox содержится текстовая информация которую нужно перемешать. Прошу помощи!
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.02.2014, 14:44
Ответы с готовыми решениями:

Перемешивание listbox
private void swapitems(ListBox lb, int n, int k) { var buf = lb.Items; ...

Перемешивание элементов массива
Здравствуйте! Имеется одномерный динамический массив строк, необходимо его перемешать, нужно для...

Случайное перемешивание элементов списка
помогите с заданием не могу решить в классе список метод - Shuffle (случайное перемешивание...

Перемешивание элементов массива случайным образом
Здравствуйте. Помогите написать функцию, которая рандомно перемешивает элементы массива. void...

8
71 / 62 / 33
Регистрация: 03.09.2013
Сообщений: 306
27.02.2014, 15:49 2
Получите значение всех строк в массив и перемешивайте как пожелаете, потом очистить и циклом добавить обратно.
0
2 / 2 / 0
Регистрация: 23.02.2014
Сообщений: 72
27.02.2014, 16:14  [ТС] 3
К сожалению не представляю как можно это сделать
0
14 / 14 / 7
Регистрация: 23.10.2012
Сообщений: 43
27.02.2014, 16:21 4
Лучший ответ Сообщение было отмечено CBeginner как решение

Решение

Попробуй так =)
C#
1
2
3
4
5
6
7
8
9
10
11
12
string[] HelloKitty = (from object item in listBox1.Items select item.ToString()).ToArray<string>();
           
            Random rand = new Random();
            for (int i = HelloKitty.Length - 1; i > 0; i--)
            {
                int j = rand.Next(i);
                string tmp = HelloKitty[i];
                HelloKitty[i] = HelloKitty[j];
                HelloKitty[j] = tmp;
            }
 
            listBox1.DataSource = HelloKitty;
1
2 / 2 / 0
Регистрация: 23.02.2014
Сообщений: 72
27.02.2014, 16:37  [ТС] 5
Спасибо, код рабочий. Только скажите что означает этот фрагмент?
C#
1
string[] HelloKitty = (from object item in listBox1.Items select item.ToString()).ToArray<string>();
0
14 / 14 / 7
Регистрация: 23.10.2012
Сообщений: 43
27.02.2014, 17:40 6
выбираем все элементы из листбокс1 в массив HelloKitty

либо вот так, если тебе не нравится прошлый пример =)
C#
1
2
3
4
5
6
7
8
9
string[] s;
        void add
        {
            s = new string[listBox.Items.Count];
            for (int i = 0; i < listBox.Items.Count; i++)
            {
                s[i] = listBox.Items[i].ToString();
            }
        }
Это уже я нашел по поиску на этом форуме...
0
2 / 2 / 0
Регистрация: 23.02.2014
Сообщений: 72
27.02.2014, 17:51  [ТС] 7
первый пример работает прекрасно, но после его использования не работает lst1.Items.Clear();
0
14 / 14 / 7
Регистрация: 23.10.2012
Сообщений: 43
27.02.2014, 18:33 8
Ты не можешь сделать
C#
1
lst1.Items.Clear();
т.к. у тебя появилась привязка к
C#
1
DataSource
В данном случае очистка будет такая:
C#
1
listBox1.DataSource = null;
либо
ты не выполняешь эту строку
C#
1
listBox1.DataSource = HelloKitty;
что бы потом не чистить
C#
1
 DataSource
. В этом случае тебе прийдется перебрать массив HelloKitty и записать все в листбокс через
C#
1
ListBox1.Items.Add();
Тогда и чистить сможешь через
C#
1
 ListBox1.Items.Clear();
1
2 / 2 / 0
Регистрация: 23.02.2014
Сообщений: 72
27.02.2014, 18:35  [ТС] 9
Спасибо!
0
27.02.2014, 18:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.02.2014, 18:35
Помогаю со студенческими работами здесь

Перемешивание элементов массива случайным образом
Здравствуйте! Помогите пожалуйста. Нужно перемешать елементы массива случайным образом. Масив...

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

Перемешивание элементов массива - найти ошибку в коде
Добрый день! Помогите с заданием: необходимо перемешать элементы массива сам массив: const int...

Как происходит перемешивание элементов последовательности, если передать в orderby экземпляр класса random?
var rnd = new Random(); var b = a.OrderBy(i =&gt; rnd.Next()); Видел в интернете такой вариант...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru