以下為cs檔案的關鍵部分
AppBarButton ab = new AppBarButton();
ab.Icon = new SymbolIcon(Symbol.Setting);
ab.IsCompact = true;
ab.VerticalAlignment = VerticalAlignment.Center;
MenuFlyout mfly = new MenuFlyout();
MenuFlyoutItem edit = new MenuFlyoutItem();
MenuFlyoutItem del = new MenuFlyoutItem();
edit.Text = "Edit";
del.Text = "Delete";
mfly.Items.Add(edit);
mfly.Items.Add(del);
FlyoutBase.SetAttachedFlyout(ab, mfly);
ab.Click += (object sender1, RoutedEventArgs e1) =>
{
FlyoutBase.ShowAttachedFlyout((FrameworkElement)sender1);
};
解釋:我們先分别建立AppBarButton和MenuFlyout控件,然後再将二者關聯即可。
如果是使用xmal寫死的話,這一步使用<AppBarButton.Flyout>控件就可以了,
而如果要用c#關聯,則需要使用到SetAttachedFlyout函數将二者關聯,
再在AppBarButton的click事件中添加ShowAttachedFlyout事件。
Microsoft docs