双CommandBar - 有可能吗?

时间:2014-12-18 13:53:21

标签: windows-runtime windows-phone-8.1

这是我的问题。在我选择它后,我有4个选项可供点击,然后每个选项给我4个额外的最终选项。

所以现在我有命令栏:

enter image description here

现在点击其中一个按钮后,我想在第一个按钮上方显示另一个命令栏:

enter image description here

Windows Phone 8.1的winRT是否可行?或者可能会显示一些带有图标的Fly菜单?

像这样:

enter image description here

这里是添加FlyOut菜单的代码但是...当我点击sendBtn时,一切都变灰但没有显示; /

MenuFlyout testMenu = new MenuFlyout();
MenuFlyoutItem item1 = new MenuFlyoutItem();
item1.Text = "Test1";
MenuFlyoutItem item2 = new MenuFlyoutItem();
item1.Text = "Test2";
testMenu.Items.Add(item1);
testMenu.Items.Add(item2);

AppBarButton sendBtn = new AppBarButton();
sendBtn.Label = textLoader.GetString("SendToService");
sendBtn.Icon = new SymbolIcon(Symbol.Mail);
sendBtn.Flyout = testMenu;
command_bar.PrimaryCommands.Add(sendBtn);

1 个答案:

答案 0 :(得分:1)

至于你的主要问题 - 没有必要制作双重命令栏。虽然您可以构建自己的控件并实现此类功能。

至于你的代码 - 在我的情况下似乎有用 - 我试过这样:

CommandBar command_bar;
public MainPage()
{
    this.InitializeComponent();
    command_bar = new CommandBar();
    MenuFlyout testMenu = new MenuFlyout();
    MenuFlyoutItem item1 = new MenuFlyoutItem();
    item1.Text = "Test1";
    MenuFlyoutItem item2 = new MenuFlyoutItem();
    item2.Text = "Test2";
    testMenu.Items.Add(item1);
    testMenu.Items.Add(item2);
    AppBarButton sendBtn = new AppBarButton();
    sendBtn.Label = "SendToService";
    sendBtn.Icon = new SymbolIcon(Symbol.Mail);
    sendBtn.Flyout = testMenu;
    command_bar.PrimaryCommands.Add(sendBtn);
    BottomAppBar = command_bar;
}

你有一个错误 - 你的第二个 MenuItem 有空标签 - 你改变前两次。

此外,如果您遇到弹出窗口定位错误的问题,那么this answer可能会有所帮助。