Объявление метода C # UpdateListBox в пользовательском классе - PullRequest
2 голосов
/ 01 апреля 2011

Привет в пользовательском классе, названном Dog, у меня есть список, в котором хранится список объектов Dog:

List<Dog> dogList = new List<Dog>();

И в главной форме у меня есть элемент управления listBox с именем dogListBox.

В классе I; я пытаюсь создать метод, который обновляет элемент управления listBox.однако, когда я пытаюсь объявить это, я получаю ошибки под dogListBox, говоря, что dogListBox не существует в текущем контексте.Как получить доступ к элементу управления listBox в моей форме, чтобы использовать этот метод

Спасибо

public void UpdateListbox()
{
    dogListBox.Items.Clear();
    foreach (Dog dog in dogListBox)
    {
        dogListBox.Items.Add(dog);
    }
}

Ответы [ 2 ]

0 голосов
/ 01 апреля 2011

Ваш код не имеет смысла, потому что вы никогда не используете dogList.Является ли UpdateListBox методом в вашей форме в классе собаки?Это должен быть метод в вашей форме.Затем вы можете написать что-то вроде:

public void UpdateListbox()
        {
            dogListBox.Items.Clear();
            foreach (Dog dog in dog.dogList)
            {
                dogListBox.Items.Add(dog);
            }
        }

Форма должна обновлять список, а не собаку.

Я также хочу отметить, что даже если вышеприведенное работает, его логически некорректноУ собаки не должно быть списка собак.Но это другая проблема.

0 голосов
/ 01 апреля 2011

в классе, который имеет этот UpdateListBox, вам нужен доступ к списку в форме (который является другим классом)

Так что вам нужно либо передать поле списка методу UpdateListBox ....вам нужно сохранить ссылку на форму в классе.

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

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