2015-07-18 3 views
1

Проблема: У меня есть пользовательский TextBox, который отображает ListBox, чтобы дать пользователю несколько советов, что вводить. Теперь дело в том, что ListBox необходимо скрыть, когда пользователь покидает TextBox за одним исключением. Если пользователь нажимает на ListBox, то ListBox останется видимым.WindowsForms: После фокуса

Есть ли способ использовать выходные или LostFocus события, чтобы узнать, является ли следующий элемент управления моим ListBox?


Не вопрос, а также интересный вопрос: можете ли вы узнать об элементе управления, который был активен до изменения фокуса?

ответ

1

Внутри чеке textBox_Leave события, если в данный момент ActiveControl ваша ListBox. Если это правда, то ListBox получил внимание после того, как вы покинули TextBox и оно остается видимым, но если это ложь, скрыть ListBox:

private void textBox1_Leave(object sender, EventArgs e) 
{ 
    if (this.ActiveControl != listBox1) 
     listBox1.Visible = false; 
} 
Смежные вопросы