Windows Phoneページに1つのテキストボックスがあり、ページが読み込まれるとすぐにキーボードを表示したいと思います。
このページに移動したときに、このテキストボックスに既にフォーカスを合わせる方法はありますか?
使用することを検討しGuide.BeginShowKeyboardInput()
ましたが、Silverlightでは良い解決策ではないと思います。
Windows Phoneページに1つのテキストボックスがあり、ページが読み込まれるとすぐにキーボードを表示したいと思います。
このページに移動したときに、このテキストボックスに既にフォーカスを合わせる方法はありますか?
使用することを検討しGuide.BeginShowKeyboardInput()
ましたが、Silverlightでは良い解決策ではないと思います。
ええ、私は手動でキーボードを見せませんでした。物理的なキーボードを備えたデバイスを持っている人にとっては迷惑かもしれません。ページのloadイベントでは、選択するテキストボックスのFocusメソッドを呼び出すだけです。キーボードは必要に応じて自動的に表示されます。
private void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e)
{
txtLongitude.Focus();
}
OnNavigatedTo
ページのメソッドをオーバーライドします。
protected override void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
// Set focus to the TextBox, this will pop up the
// virtual keyboard
myTextBox.Focus();
}
イベントで使用する場合は、をtextBox.Focus()
介して呼び出すことができます。Dispatcher
OnNavigatedTo
protected override void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
if (e.NavigationMode != NavigationMode.Back)
{
Dispatcher.InvokeAsync(() => ShowKeyboard());
}
}
private void ShowKeyboard()
{
textBox.Focus();
}
ここでのif
ステートメントは、ページが[戻る]ボタンから移動されていない場合にのみキーボードが表示されることを確認します。