C # - Как добавить строки в список из другого класса - PullRequest
1 голос
/ 28 декабря 2011

Я хочу добавить несколько строк в ListBox, и у меня мало классов.Я пытаюсь сделать мой ListBox общедоступным в свойствах и добавить несколько строк в своем классе: Form1 form = new Form1();, а затем form.listBox3.Items.Add("ex");.

.Что мне делать дальше?

Ответы [ 3 ]

1 голос
/ 28 декабря 2011

Просто передайте форму (которая содержит listbox3) на форму, откуда вы добавляете в listbox3.

    Form1 f = new Form1(this);
    f.Show();

А из формы1

Конструктор:

    MyListBoxForm _f;
    public Form1(MyListBoxForm f)
    {
        InitializeComponent();
        _f = f;
    }

И ваша функция:

   void Add()
   {
      _f.listBox3.Items.Add("ex");
   }

Редактировать: сделать listbox3 внутренним или общедоступным. Альтернативой может быть создание открытого метода в вашем классе списка. Зависит от ваших потребностей. Если ваше требование состоит в том, чтобы просто добавить несколько вещей в список, и так будет всегда, перейдите к методическому подходу.

1 голос
/ 28 декабря 2011

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

Не подвергайте внутренности другим классам; это не хорошая объектно-ориентированная форма.

0 голосов
/ 28 декабря 2011

В конструкторе форм измените свойство Modifiers в разделе «Дизайн» на «Public».

РЕДАКТИРОВАТЬ: я не сказал, чтобы изменить код, но в Visual Studio Designer. (PropertyGrid)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...