2016-11-21 7 views
1

Windowsストアアプリケーションでは、「ページが読み込まれたときとユーザーが他のコンポーネントとやりとりした後に、TextBoxにフォーカスを置いてください」と表示されます。Windows 8.1 TextBoxに焦点を当て続ける

ページが読み込まれたとき、およびユーザーが同じグリッド(つまりボタン)内の他のコンポーネントとやり取りするときに、問題を解決しました。

MyTextBox.LostFocus += (s,e)=> { 
    Dispatcher.RunAsync(
      CoreDispatcherPriority.Normal,() => SearchBox.Focus(FocusState.Programmatic)); 
} 

問題は、ユーザーがAppBarのように異なるビューのコンポーネントとやり取りするときに問題になることです。

親ビューを比較し、同じビューから来ている場合はフォーカス(FocusState.Programmatic)を実行することができます。

しかし...どのように?

答えて

0

説明に基づいて、TextBoxに焦点を当てたいと思っています。私は簡単なデモを行い、これを参照することができます。

XAML:背後に

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> 
    <StackPanel HorizontalAlignment="Center" VerticalAlignment="Bottom"> 
    <TextBox x:Name="textbox1" Width="300" Height="50" HorizontalAlignment="Left" VerticalAlignment="Bottom"></TextBox> 
    </StackPanel> 
    <CommandBar> 
     <AppBarToggleButton Icon="Shuffle" Label="Shuffle" Click="AppBarButton_Click" /> 
     <AppBarToggleButton Icon="RepeatAll" Label="Repeat" Click="AppBarButton_Click"/> 
     <AppBarSeparator/> 
     <AppBarButton Icon="Back" Label="Back" Click="AppBarButton_Click"/> 
     <AppBarButton Icon="Stop" Label="Stop" Click="AppBarButton_Click"/> 
     <AppBarButton Icon="Play" Label="Play" Click="AppBarButton_Click"/> 
     <AppBarButton Icon="Forward" Label="Forward" Click="AppBarButton_Click"/> 
     <CommandBar.SecondaryCommands> 
      <AppBarButton Icon="Like" Label="Like" Click="AppBarButton_Click"/> 
      <AppBarButton Icon="Dislike" Label="Dislike" Click="AppBarButton_Click"/> 
     </CommandBar.SecondaryCommands> 
     <CommandBar.Content> 
      <TextBlock Text="Now playing..." Margin="12,14"/> 
     </CommandBar.Content> 
    </CommandBar> 
</Grid> 

コード:

 public MainPage() 
    { 
     this.InitializeComponent(); 
     this.LayoutUpdated += MainPage_LayoutUpdated; 
    } 

    private void MainPage_LayoutUpdated(object sender, object e) 
    { 
     textbox1.Focus(Windows.UI.Xaml.FocusState.Programmatic); 
    } 

私はまた、あなたが参照できるone threadsを見つけます。

関連する問題