C# WinUI 3アプリを作っていく途中で、調べたことを忘録的に投稿します。今回はWinUI3プロジェクトでアプリケーションの起動時に特定のコントロールにフォーカスを当てる方法です。
コントロールにフォーカスする
WinUI3プロジェクトの場合、アプリの起動時にコントロールにフォーカスを当てるには “Focus(FocusState.Programmatic)” を使います。
例えば、[TextBox]コントロールにフォーカスを当てるには、次の手順で行います。
1. Xamlを編集して[TextBox]コントロールと[Loaded]イベントを追加します。
<Grid VerticalAlignment="Center" HorizontalAlignment="Center">
<TextBox Loaded="TextBox_Loaded"></TextBox>
</Grid>
2. 追加した[Loaded]イベントに次のコードを追加します。
private void TextBox_Loaded(object sender, RoutedEventArgs e)
{
((TextBox)sender).Focus(FocusState.Programmatic);
}
実行すると、テキストボックスにフォーカスが当たります。
まとめ
今回は、WinUI3プロジェクトでアプリケーションの起動時に特定のコントロールにフォーカスを当てる方法について紹介しました。
WinUI3プロジェクトの場合、フォーカスを当てるコントロールに[Loaded]イベントを追加して、”Focus(FocusState.Programmatic)” を使います。
WinUI 3 アプリで起動時にコントロールにフォーカスを当てたい人の参考になれば幸いです。
スポンサーリンク
最後までご覧いただき、ありがとうございます。
