私は Windows 10 UWP アプリに取り組んでおり、Template10 ライブラリの空のテンプレートを使用しています。ハンバーガーメニューを問題なく動作させることができます。このアプリでは、ユーザーが最初にログインしてから、アプリの「ホームページ」に進む必要があります。ログイン後にハンバーガーメニューの下部にあるユーザーのユーザーIDをセカンダリボタンとして表示するか、ログインしていない(またはログアウトしている)場合はログインオプションを表示したいと思います。
ユーザー ID を表示することになっているセカンダリ ボタンの XAML は次のとおりです。
<controls:HamburgerButtonInfo>
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<SymbolIcon Symbol="Contact" Width="48" Height="48" />
<TextBlock Name="Username" Margin="12, 0, 0, 0" VerticalAlignment="Center"/>
</StackPanel>
</controls:HamburgerButtonInfo>
コード ビハインドは、ユーザー名を表示するコードが追加されたハンバーガー メニュー シェルを有効にするためのデフォルトのコンストラクターです。
public Shell(NavigationService navigationService)
{
this.InitializeComponent();
Menu.NavigationService = navigationService;
if(user logged in)
{
Username.Text = Username;
}
else
{
Username.Text = "login";
}
}
このコードは、ユーザーがログインした後でも「ログイン」と表示されるという点で部分的に機能します。ユーザー名は、アプリが一時停止/再開または終了/再起動した場合にのみ表示されます。ユーザーがログインするとすぐに、アプリを再起動/再開することなく、ハンバーガー メニュー シェルのセカンダリ ボタンが更新されるようにするにはどうすればよいですか?