【问题标题】:Why does there seem to be no "Opened" event for a WinRT XAML BottomAppBar?为什么 WinRT XAML BottomAppBar 似乎没有“打开”事件?
【发布时间】:2015-01-14 12:28:04
【问题描述】:

我想响应在我的 Windows 应用商店应用中打开底部应用栏。 Elsewhere,我被告知确实存在“已打开”事件,但是:

<Page.BottomAppBar x:Name="bottomAppBar" Opened="bottomAppBar_Opened" >

...导致红色(无法识别)“Opened”,而我输入的方法名并没有在代码隐藏中生成对应的处理程序。

我希望能够做这样的事情:

private void bottomAppBar_Opened(object sender, object e)
{
    appbarbtnOpenPhotosets.Enabled = PhotraxSQLiteUtils.DatabaseContainsRecords();
    appbarbtnCre8FilteredPhotoset.Enabled = appbarbtnOpenPhotosets.IsEnabled; // or call the 
        query again, if necessary
    appbarbtnClearMap.Enabled = MapHasMarkers();
}

...但是我可以使用什么事件,或者如何挂钩到应用栏的打开?

实际上,也不允许为 Page 的 BottomAppBar 命名。

【问题讨论】:

    标签: c# windows-store-apps winrt-xaml appbar


    【解决方案1】:

    Page.TopAppBar 是一个(附加的)属性,因此您试图在属性分配上设置一个属性。此外,如您所见here,Page.TopAppBar 的子级必须是 AppBar 对象。

    所以,你应该做以下事情

      <Page.TopAppBar>
          <AppBar Opened="...">
              <!-- Here the AppBar's content -->
          </AppBar>
      </Page.TopAppBar>
    

    【讨论】:

    • 就我而言,它是一个BottomAppBar,但我认为这个概念是相同的。但我没有“AppBar”子项,而是“CommandBar”:
    • CommandBar 是 AppBar 的一个特化,如您在此处看到的:msdn.microsoft.com/en-US/library/windows/apps/…
    猜你喜欢
    • 1970-01-01
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多