У меня есть элемент управления ListBox, заполненный филиалами крупной розничной сети. Сотрудники, использующие систему, должны войти в соответствующую ветку, и я хотел бы, чтобы они могли искать в ListBox, чтобы найти свою ветвь.
Я создал обработчик событий, когда текст в поле поиска изменяется, и уже пытался использовать звук кода в StackOverflow:
private int lastMatch = 0;
private void txtSearch_TextChanged(object sender, EventArgs e)
{
int x = 0;
string match = txtSearch.Text;
if (txtSearch.Text.Length != 0)
{
bool found = true;
while (found)
{
if (lbBranches.Items.Count == x)
{
lbBranches.SetSelected(lastMatch, true);
found = false;
}
else
{
lbBranches.SetSelected(x, true);
match = lbBranches.SelectedValue.ToString();
if (match.Contains(txtSearch.Text))
{
lastMatch = x;
found = false;
}
x++;
}
}
}
}
Когда я компилирую и начинаю печатать в поле поиска, я получаю эту ошибку:
Object reference not set to an instance of an object.
Строка, о которой идет речь:
match = lbBranches.SelectedValue.ToString();
Понятия не имею, что там может быть не так, у кого-нибудь есть идея?
Спасибо!