Мне нужно избавиться от фокуса - PullRequest
0 голосов
/ 14 июня 2011

Как сделать так, чтобы фокус исчезал:

<Textbox Name="Textbox1" />

Или, если я не могу заставить фокус исчезнуть, где он находится, прежде чем что-то сфокусировано?

Ответы [ 4 ]

1 голос
/ 14 июня 2011

Вы пробовали установить IsTabStop = False и Focusable = false?

Вы также можете проверить это:

http://msdn.microsoft.com/en-us/library/aa969768.aspx

0 голосов
/ 14 июня 2011

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

например. если вы добавите это в событие KeyUp, ваше текстовое поле потеряет фокус при нажатии

    private void TextBox_KeyUp(object sender, KeyEventArgs e)
    {
        if (e.Key == Key.A)
            FocusManager.SetFocusedElement(this, this);
    }
0 голосов
/ 14 июня 2011

Вы можете использовать свойство SetFocusedElement, чтобы установить фокус на какой-то другой элемент управления.

http://msdn.microsoft.com/en-us/library/aa969768.aspx

Также проверьте FocusManager.SetIsFocusScope Method http://msdn.microsoft.com/en-us/library/system.windows.input.focusmanager.setisfocusscope.aspx

0 голосов
/ 14 июня 2011

Вы можете изменить фокус с помощью GotFocus (http://msdn.microsoft.com/en-us/library/system.windows.forms.control.gotfocus.aspx) Событие текстового поля

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