У меня есть простое всплывающее окно ChildWindow
в Silverlight 4 ( бета).
Важно: это приложение вне браузера.
Я хочу автоматически устанавливать фокус на TextBox
элементе управления при открытии окна.
Я пробовал пару вещей:
Следующий код, похоже, ничего не делает. Я не думаю, что элемент управления готов к фокусировке после загрузки.
private void ChildWindow_Loaded(object sender, RoutedEventArgs e)
{
textBox1.Focus();
}
Это работает, но это круто.
private void ChildWindow_GotFocus(object sender, RoutedEventArgs e)
{
if (_firstTime == true) {
textBox1.Focus();
_firstTime = false;
}
}
Нет лучшего способа? Мне всегда приходилось делать такие ужасные вещи в WinForms, но я надеялся, что больше этого не будет.
Примечание. Этот аналогичный вопрос предназначен только для браузера. . Он предлагает вызвать System.Windows.Browser.HtmlPage.Plugin.Focus();
, что не работает и фактически выдает ошибку при работе в бета-версии Silverlight 4 вне браузера.