Не удается очистить Winforms-ListBox - PullRequest
2 голосов
/ 02 февраля 2012

Это довольно простой вопрос, но он до сих пор побеждал меня.

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

Однако, похоже, ничего из следующего не работает:

lbxQuantity.Items.Clear();
lbxQuantity.DataSource = null;
lbxQuantity.Text = "";

Как полностью очистить список всехзначения и просто оставить его пустым?

Список находится в объявлении приложения WinForms. Я хотел бы добавить кнопку, которая очищает все списки в форме.

1 Ответ

6 голосов
/ 02 февраля 2012

Это зависит от того, какой метод вы используете для заполнения ListBox.

  • Если вы добавляете элементы вручную, вызывая listBox.Items.Add, вы можете очистить его через listBox.Items.Clear.
  • Если вы заполняете его через свойства DataSource, DisplayMember и ValueMember, вы можете установить DataSource = null, а затем вызвать listBox.Items.Clear в обработчике событий DataSourceChanged, когда DataSource равен нулю.Конечно, вы также можете сделать это сразу после нулевого присваивания.

Другая возможность для поведения, которое вы видите, может состоять в том, что список будет заполнен в вашем собственном коде через какое-то событие, как только вы удалите всетовар.

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