Установить фокус на текстовое поле во вложенном пользовательском элементе управления - Silverlight - PullRequest
1 голос
/ 28 июня 2011

Я не уверен, почему это так сложно.У меня есть форма входа, которая вложена в фрейм контента в Silverlight 4. Когда я загружаю приложение, оно обнаруживает, прошел ли пользователь аутентификацию.Если нет (очевидно, не изначально), он загружает форму входа.Довольно стандартные вещи ...

Я не могу, на всю жизнь, сфокусироваться на текстовом поле имени пользователя.Я попытался установить 'istabstop' = false для элементов управления контентом, я попытался добавить обработчик событий this.Loaded, установив фокус там (в том числе сначала используя метод htmlpage.plugin.focus)конец [в первую очередь потому, что это не должно быть так сложно].

Что мне делать?

Спасибо,

Скотт

1 Ответ

0 голосов
/ 02 июля 2011

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

В любом случае, у меня есть следующий код в моем приложении, и он очень хорошо фокусирует текстовое поле.

Dispatcher.BeginInvoke(() => textBox.Focus());

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

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

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