5

Windows Phoneページに1つのテキストボックスがあり、ページが読み込まれるとすぐにキーボードを表示したいと思います。

このページに移動したときに、このテキストボックスに既にフォーカスを合わせる方法はありますか?

使用することを検討しGuide.BeginShowKeyboardInput()ましたが、Silverlightでは良い解決策ではないと思います。

4

3 に答える 3

8

ええ、私は手動でキーボードを見せませんでした。物理的なキーボードを備えたデバイスを持っている人にとっては迷惑かもしれません。ページのloadイベントでは、選択するテキストボックスのFocusメソッドを呼び出すだけです。キーボードは必要に応じて自動的に表示されます。

private void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e)
{
            txtLongitude.Focus();
}
于 2012-09-18T16:14:58.303 に答える
6

OnNavigatedToページのメソッドをオーバーライドします。

protected override void OnNavigatedTo(NavigationEventArgs e)
{
  base.OnNavigatedTo(e);

  // Set focus to the TextBox, this will pop up the 
  // virtual keyboard
  myTextBox.Focus();
}
于 2012-09-18T16:12:44.960 に答える
0

イベントで使用する場合は、をtextBox.Focus()介して呼び出すことができます。DispatcherOnNavigatedTo

protected override void OnNavigatedTo(NavigationEventArgs e)
{
    base.OnNavigatedTo(e);

    if (e.NavigationMode != NavigationMode.Back)
    {
        Dispatcher.InvokeAsync(() => ShowKeyboard());
    }
}

private void ShowKeyboard()
{
    textBox.Focus();
}

ここでのifステ​​ートメントは、ページが[戻る]ボタンから移動されていない場合にのみキーボードが表示されることを確認します。

于 2014-06-07T20:12:02.930 に答える