Bakhshi-faisal Ответов: 2

Как отобразить все значения текстового поля в метке


я могу отобразить один элемент, когда выберу его
но я не могу показать все предметы сразу.

Что я уже пробовал:

я попробовал это
форма 1
private void btn_voit_Click(object sender, EventArgs e)
        {
            string textboxchoix = listBox2.Text;           
            Form2 frm = new Form2(textboxchoix);
            frm.Show();
        }

формы Form2
public Form2(string textboxchoix)
        {
            InitializeComponent();
           label_choix.Text = textboxchoix;
            
        }

2 Ответов

Рейтинг:
1

OriginalGriff

Добавьте метод в Форму2

public void AddString(string s)
   {
   lable_choix.Text += s;
   }
И назовите это для каждого дополнительного пункта.

Цитата:
я знаю как отобразить текстовое поле в метке но если я выберу его он будет отображаться и он будет отображать только один элемент для exmaple у меня есть 10 элементов в моем текстовом поле но когда я его отображаю он показывает только один я хочу отобразить все элементы


Это не текстовое поле - это список.
Попробовать это:
StringBuilder sb = new StringBuilder();
foreach (object x in listBox1.Items)
    {
    sb.AppendLine(x.ToString());
    }
Form2 frm = new Form2(sb.ToString());
frm.Show();


Bakhshi-faisal

это не работает

OriginalGriff

"Это не работает", вероятно, самый бесполезный отчет о проблеме, который мы получаем - и мы получаем его много. Он ничего не говорит нам о том, что происходит или когда это происходит.
Итак, расскажите нам, что он делает, чего вы не ожидали, или не делает, что вы сделали.
Расскажите нам, что вы сделали, чтобы это произошло.
Сообщайте нам о любых сообщениях об ошибках.
Покажите нам точный код, который вы пытались использовать.

Bakhshi-faisal

я знаю, как отобразить текстовое поле в метке
но если я выберу его, он будет отображаться, и он будет отображать только один элемент
для exmaple у меня есть 10 элементов в моем текстовом поле, но когда я его отображаю, он показывает только один
я хочу отобразить весь элемент это код который я суслю



я попробовал это
форма 1
частная btn_voit_Click недействительным(объект отправителя, EventArgs в электронной)
{
строка textboxchoix = listBox2. Text;
Form2 frm = new Form2(textboxchoix);
ФРМ.Показать();
}
формы Form2
public Form2(string textboxchoix)
{
метод InitializeComponent();
label_choix.Текст = textboxchoix;

}

OriginalGriff

Это не текстовое поле-это список, а это совсем другое.
Ответ обновлен

Рейтинг:
0

Wendelius

Модифицированный,

Если я правильно понимаю, вы пытаетесь переместить элементы из списка в форме в другой список в другой форме.

Если это правильно, то вам нужно определить открытый метод в принимающей форме и передать элементы, которые будут добавлены в этот метод.

На стороне "отправки" вы собираете элементы и вызываете метод. Однако обратите внимание, что вам нужно знать экземпляр формы, недостаточно знать только класс

Рассмотрим следующий пример

В форме" получение " определите следующий метод

public bool AddListboxItems(string[] items) {
   this.listBox1.Items.AddRange(items);

   return true;
}

Не забудьте использовать правильное имя списка

И если класс принимающей формы является например Form1 то следующее должно отправить элементы в новый экземпляр для класса
ListBox lb1 = new ListBox();

lb1.Items.Add("first");
lb1.Items.Add("second");
lb1.Items.Add("third");

// select items 0 and 2
lb1.SelectionMode = SelectionMode.MultiSimple;
lb1.SelectedItems.Add(lb1.Items[0]);
lb1.SelectedItems.Add(lb1.Items[2]);

Form1 frm1 = new Form1(); // The receiving instance should be figured out in another way

string[] items = new string[lb1.SelectedItems.Count];

for (int counter = 0; counter < lb1.SelectedItems.Count; counter++) {
   items[counter] = lb1.SelectedItems[counter].ToString();
}

frm1.AddListboxItems(items);

Обратите внимание, что принимающая форма создается в коде, поэтому в реальной ситуации вам, вероятно, потребуется ссылка на уже существующую форму.


Bakhshi-faisal

у меня есть две формы в одной форме, я перемещаю / передаю элемент между 2 текстовыми полями, которые вы уже сказали мне, как это сделать
но теперь я хочу отобразить второе текстовое поле в метке
я могу показать его
но если я выберу один элемент он будет работать но для более чем одного он не отображается я не знаю

Wendelius

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

Bakhshi-faisal

частная pictureBox2_Click недействительным(объект отправителя, EventArgs в электронной)
{
для (тип int я = 0; Я &л; listBox2.Предметы.Граф; i++)
{
список listbox1.Предметы.Добавить (listBox2. Items[i]);
}
listBox2.Items.Четкий();
}
этот код переместит весь элемент из одного текстового поля в другое текстовое поле

Wendelius

Listbox-это не то же самое, что textbox, это совершенно разные классы.

Итак, вы пытаетесь переместить элементы из списка в форме 1 в список в форме 2?

Wendelius

См. обновленный ответ