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

Вывод элементов из listbox в textbox

28.09.2018, 16:30. Показов 10337. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, подскажите, как можно выводить по нажатию на кнопку элементы из listbox в textbox последовательно от 1 к последнему и чтобы можно было назад делать также.
В listbox я загружаю алгоритмы типо такого формата - R U R' U'
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.09.2018, 16:30
Ответы с готовыми решениями:

Вывод текста в TextBox при нажатии на один из элементов ListBox
Доброго времени суток! Смотрите: У меня в ListBox есть 3 элемента (Яблоко, Груша, Персик). Мне нужно сделать так, чтобы когда я кликаю...

Вывод записи из ListBox в TextBox
Подскажите пожалуйста как решить вот такую задачу, дан ListBox в нем уже забиты данные, необходимо найти одну только нужную строку в списке...

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

17
 Аватар для alexeu121
2 / 1 / 2
Регистрация: 24.12.2013
Сообщений: 62
28.09.2018, 16:53
Добрый день. Если ваш listbox содержит набор данных, то можно в событии нажатия кнопки прописать цикл. Который при каждом нажатии будет перебирать элементы listbox и выводить их.

C#
1
2
3
4
5
6
7
button1_Click()
{
       for(int i = 0; i < listBox1.Items.Count; i++)
       {
              textBox1.Text = listBox1.Items[i].ToString();
       }
}
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16124 / 11248 / 2888
Регистрация: 21.04.2018
Сообщений: 33,081
Записей в блоге: 2
28.09.2018, 16:54
Цитата Сообщение от soberfrog Посмотреть сообщение
на кнопку элементы из listbox в textbox последовательно от 1 к последнему и чтобы можно было назад делать также.
если правильно понял - считываете ListBoxItem преобразуете в строки текста и пишите в TextBox.
Так же обратно создаёте из строк TextBox список строк и устанавливаете ссылку ItemsSouce на этот список.
0
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
28.09.2018, 17:17
soberfrog, А почему не заполнять textbox от туда, откуда заполняется Listbox ?
0
1 / 1 / 0
Регистрация: 03.12.2015
Сообщений: 126
28.09.2018, 18:22  [ТС]
Не работает, он просто первый элемент выводит и последующие нет при нажатии на кнопку

Добавлено через 7 минут
Не получается так, он просто первый элемент выводит
C#
1
2
3
4
5
 for (int i = 0; i < listBox1.Items.Count; i++)
                {
                    textBox1.Text = listBox1.Items[i].ToString();
                
                }
0
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
28.09.2018, 18:33
soberfrog, Заполнить его легко,
C#
1
2
  listBox1.Items.Cast<String>().ToList()
                .ForEach(x => textBox1.AppendText(x + " "));
Спрошу еще раз. Зачем ? Откуда элементы в ListBox попадают ?
0
1 / 1 / 0
Регистрация: 03.12.2015
Сообщений: 126
28.09.2018, 18:39  [ТС]
Я загружаю их из текстового файла, затем мне нужно чтобы по нажатию на кнопку они выводились последовательно в текст бокс

Добавлено через 1 минуту
то что Вы отправили, заполняет текст бокс сразу всеми строками, а нужно последовательно по одной, например нажал btn вышла 1 строка, нажал еще раз btn вышла 2 строка и тд
0
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
28.09.2018, 19:01
soberfrog, Вы бы больше кода показали, было бы проще вам помочь. Добавлять по одному можно так:
C#
1
2
3
4
var items = listBox1.Items.Cast<String>().ToList();
            
            textBox1.AppendText(items.ElementAt(i));
            i++;
Предварительно определив в классе
C#
1
int i = 0;
0
1 / 1 / 0
Регистрация: 03.12.2015
Сообщений: 126
28.09.2018, 19:35  [ТС]
Вот посмотрите код, сейчас все работает, но когда последний элемент заканчивается, то выходит ошибка, можно как то сделать, чтобы он сначала начал или хотябы вывел сообщение, что список закончился
Вложения
Тип файла: rar TreningAlg.rar (169.6 Кб, 22 просмотров)
0
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
28.09.2018, 19:41
soberfrog,
C#
1
2
3
4
5
6
7
8
9
if (i >= 0 && i < items.Count)
            {
                textBox1.AppendText(items.ElementAt(i));
                i++;
            }
            else
            {
                MessageBox.Show("Элементы кончились");
            }
0
1 / 1 / 0
Регистрация: 03.12.2015
Сообщений: 126
28.09.2018, 19:45  [ТС]
Ооо круто, спасибо огромное))) А еще подскажите, можно сделать повтор, то после сообщения "элементы закончились" начать список заного
0
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
28.09.2018, 19:48
soberfrog, После MessageBox добавить
C#
1
2
textBox1.Clear();
i = 0;
1
1 / 1 / 0
Регистрация: 03.12.2015
Сообщений: 126
28.09.2018, 20:01  [ТС]
Смотрите, мои алгоритмы выглядт следующим образом
R U R' U2 R U' R' U : (U' R U R') U2 (R U' R')
то что до двоеточия это привод к ситуации на кубике рубика, а то что после это решение приведенной ситуации, нужно чтобы то, что перед двоеточием выводилось в textbox1, а то что после в textbox2. Я пробовал написать так, но выводится только первая строка разделено, а следующие вообще не выводятся, textbox3 я содал для того чтобы из него брать отдельное значение и делить на части по двоеточию, textbox3 изначально будет скрыт
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
25
26
27
28
29
30
31
32
33
 private void button1_Click(object sender, EventArgs e)
        {
            textBox1.Clear();
 
            if (listBox1.Items.Count == 0)
            {
                MessageBox.Show("Сначала выбери сетапы!");
            }
            else
            {
                var items = listBox1.Items.Cast<String>().ToList();
                if (i >= 0 && i < items.Count)
                {
                    textBox3.AppendText(items.ElementAt(i));
                    i++;
                }
                else
                {
                    MessageBox.Show("Алгоритмы закончились");
                    i = 0;
                }
                for (int i = 0; i < textBox3.Lines.Length; i++)
                {
                    //Алгоритм
                    textBox1.Text += textBox3.Lines[i].Split(':')[0] + Environment.NewLine;
                    //Подсказка
                    textBox2.Text += textBox3.Lines[i].Split(':')[1] + Environment.NewLine;
                }
            }
 
 
           
        }
0
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
28.09.2018, 20:12
soberfrog, Тогда зачем вам вообще третий текстбокс ? Создайте лист, добавляйте в него значения.
0
1 / 1 / 0
Регистрация: 03.12.2015
Сообщений: 126
28.09.2018, 20:25  [ТС]
и как это сделать?
0
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
28.09.2018, 20:33
soberfrog,
C#
1
2
3
4
5
6
7
 
List<string> myList = new List<string>();
if (i >= 0 && i < items.Count)
                {
                    myList.Add(items.ElementAt(i));
                    i++;
                }
0
1 / 1 / 0
Регистрация: 03.12.2015
Сообщений: 126
28.09.2018, 20:36  [ТС]
я при загрузке их сюда буду записывать, или зачем это вообще? одни ошибки и не работает

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 var items = listBox1.Items.Cast<String>().ToList();
 
 
                List<string> myList = new List<string>();
                if (i >= 0 && i < items.Count)
                {
                    
                    textBox1.AppendText(items.ElementAt(i));
                   
                        myList.Add(items.ElementAt(i));
                        //Алгоритм
                        textBox1.Text += myList.Lines[i].Split(':')[0] + Environment.NewLine;
                        //Подсказка
                        textBox2.Text += myList.Lines[i].Split(':')[1] + Environment.NewLine;
                
                    i++;
                }
                else
                {
                    MessageBox.Show("Алгоритмы закончились");
                    i = 0;
                }
0
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
28.09.2018, 20:55
Цитата Сообщение от soberfrog Посмотреть сообщение
зачем это вообще?
Затем, что контролы для отображения данных, а не для манипуляции с ними.
Архитектура ПО в WinForms (FAQ & HowTo)
Когда вы поймете это и начнете разделять код на модель данных и интерфейс приложения. Многое для вас станет очевидным.
Цитата Сообщение от soberfrog Посмотреть сообщение
одни ошибки и не работает
Конечно не работает. Для List нет метода Lines.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.09.2018, 20:55
Помогаю со студенческими работами здесь

Ввод массивов через множество textBox, подсчёт суммы, и вывод через listBox. Ошибка при вводе через textBox
Создал я кучу текст боксов, там происходит ввод каждого элемента массива. И вывод через листбокс По идее должен...

Вывод случайной строчки из listBox в textBox
На форме имеется кнопка по нажатию которой выбирается текстовый фаил, содержимое txt построчно выводится в listBox. По нажатию второй...

Вывод значения из ListBox в TextBox VBA
Имеется два ListBox-а. Необходимо при выборе значения первой строки в ListBox1, вывести в TextBox1 значение первой строки из ListBox2, при...

Вывод данных из listbox в textbox по отдельности
Нужно сделать чтобы выбранные данные в listbox выводились в разных textbox

Вывод на печать из textbox(listbox,richtextbox )
Приветствую. Скажите можно ли как сделать вывод на печать текста из textbox(listbox,richtextbox ), облазил интернет толкового нечего не...


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru