WPF MVVM Focus Field под нагрузкой
У меня есть вид, который имеет одинTextBox
и параButton
ниже. Когда окно загружается, я хочу, чтобыTextBox
иметь фокус.
Если бы я не использовал MVVM, я бы просто позвонилTextBox.Focus()
в загруженном событии. Однако моя ViewModel не знает о моем представлении, так как я могу сделать это, не помещая код в код позади моего представления?
РЕДАКТИРОВАТЬ: Прочитав ответы, я решил поставить этот код в представлении xaml
<DockPanel FocusManager.FocusedElement="{Binding ElementName=MessageTextBox}">
<TextBox Name="MessageTextBox" Text="{Binding Message}"/>
</DockPanel>
Если бы это было что-то кроме начального фокуса страницы, я, вероятно, порекомендовал бы ответ Джона Галлоуэя, так как им можно управлять из ViewModel.