BasePage
私のシナリオでは、すべての Windows 8.1 アプリ ページに対してを書きたいと考えています。このBasePage
中に の作成があるはずTopAppBar
です。
実際に私は持っています:
public CommandBar TopCommandBar
{
get
{
// Check if a TopAppBar exists
if (this.TopAppBar != null) return this.TopAppBar.Content as CommandBar;
var appBar = new AppBar();
this.TopAppBar = appBar;
var top = this.TopAppBar.Content as CommandBar;
if (top == null)
{
topCommandBar = new CommandBar();
this.TopAppBar.Content = topCommandBar;
}
return this.TopAppBar.Content as CommandBar;
}
}
このコードは非常にうまく機能しています。しかし、後でBaseClass
追加したいAppBarButton
if (ShowCloseButton)
{
var closeBtn = new AppBarButton();
closeBtn.Icon = new SymbolIcon(Symbol.Clear);
closeBtn.Label = "Close";
closeBtn.Click += closeBtn_Click;
this.TopCommandBar.PrimaryCommands.Insert(0, closeBtn);
}
ストレージの動作は、マウスの右ボタンを 2 回クリックするまで にcloseBtn
表示されないことです。TopAppBar
初めて右クリックしたときを意味します->がTopAppBar
表示されますが、中にボタンはありません。
次に、もう一度右ボタンをクリックします -->TopAppBar
開いたままになり、ボタンが完全な機能を備えた状態で表示されます。