Я пытаюсь отфильтровать список с текстом из текстового поля realTime.Фильтр ListBox с TextBox в реальном времени
Вот код:
private void SrchBox_TextChanged_1(object sender, EventArgs e)
{
var registrationsList = registrationListBox.Items.Cast<String>().ToList();
registrationListBox.BeginUpdate();
registrationListBox.Items.Clear();
foreach (string str in registrationsList)
{
if (str.Contains(SrchBox.Text))
{
registrationListBox.Items.Add(str);
}
}
registrationListBox.EndUpdate();
}
Вот вопросы:
Когда я запускаю программу, я получаю эту ошибку:
Object reference not set to an instance of an object
Если я ударил забой, мой первоначальный список больше не отображается. Это связано с тем, что мой фактический список предметов теперь сокращен, но как я могу это достичь?
Можете ли вы указать мне правильное направление?
вы пытались с помощью (! IsPostBack) проверки, если это не пост-обратно –
Вам нужно сохранить содержимое списка в отдельном '' Список так что Items.Clear() Дон» t оставить вас с пустым списком. NRE не так очевидна. Кастинг в строку не обязательно работает, если исходные элементы не являются строками. Всегда используйте ToString(). –
@COLDTOLD: Довольно уверен, что это вопрос WinForms ... –