single.php

C# WinUI3でアプリ起動時に特定のコントロールにフォーカスする方法

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 アプリで起動時にコントロールにフォーカスを当てたい人の参考になれば幸いです。

スポンサーリンク

最後までご覧いただき、ありがとうございます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です