C# 在每个appbar按钮Windows Phone 8.1 RT中发布show MenuFlyout项
我有appbar按钮,每个按钮内都有弹出式按钮:C# 在每个appbar按钮Windows Phone 8.1 RT中发布show MenuFlyout项,c#,windows-phone-8.1,C#,Windows Phone 8.1,我有appbar按钮,每个按钮内都有弹出式按钮: <Page.BottomAppBar> <CommandBar> <!--app bar basic shape--> <AppBarButton x:Name="BaseShapeMenu" Label="Hình cơ bản"> <AppBarButton.Icon> <FontIcon FontFamily="Seg
<Page.BottomAppBar>
<CommandBar>
<!--app bar basic shape-->
<AppBarButton x:Name="BaseShapeMenu" Label="Hình cơ bản">
<AppBarButton.Icon>
<FontIcon FontFamily="Segoe UI Symbol" Glyph="▭"/>
</AppBarButton.Icon>
<AppBarButton.Flyout>
<MenuFlyout>
<MenuFlyoutItem Text="'▭' Rectangle" Tag="stRectangle" Click="BaseShapeMFI_Click" />
<MenuFlyoutItem Text="'⬬' Ellipse" Tag="stEllipse" Click="BaseShapeMFI_Click" />
<MenuFlyoutItem Text="'/' Line" Tag="stLine" Click="BaseShapeMFI_Click" />
</MenuFlyout>
</AppBarButton.Flyout>
</AppBarButton>
<!--app bar chemical shape-->
<AppBarButton x:Name="ChemicalShape" Label="Hình hóa học">
<AppBarButton.Icon>
<FontIcon FontFamily="Segoe UI Symbol" Glyph="⌬"/>
</AppBarButton.Icon>
<AppBarButton.Flyout>
<MenuFlyout>
<MenuFlyoutItem Text="'⬡' CycloHexan" Tag="stCycloHexan" Click="ChemicalMFI_Click" />
<MenuFlyoutItem Text="'⌬' Benzen" Tag="stBenzen" Click="ChemicalMFI_Click" />
<MenuFlyoutItem Text="'⬣' BenzenCircle" Tag="stBenzenCircle" Click="ChemicalMFI_Click" />
</MenuFlyout>
</AppBarButton.Flyout>
</AppBarButton>
<!--app bar symbol-->
<AppBarButton x:Name="SymbolShape" Label="Ký tự">
<AppBarButton.Icon>
<FontIcon FontFamily="Segoe UI Symbol" Glyph="♒"/>
</AppBarButton.Icon>
<AppBarButton.Flyout>
<MenuFlyout>
<MenuFlyoutItem Text="'⬡' CycloHexan" Tag="stCycloHexan"/>
<MenuFlyoutItem Text="'⌬' Benzen" Tag="stBenzen" />
<MenuFlyoutItem Text="'⬣' BenzenCircle" Tag="stBenzenCircle" />
</MenuFlyout>
</AppBarButton.Flyout>
</AppBarButton>
<AppBarButton x:Name="SelectButton" Label="Chọn hình" Icon="Edit" Click="SelectButton_Click"/>
</CommandBar>
每个按钮的菜单弹出项都会丢失。运行时,如下图所示显示:
有人能提出任何解决此问题的方法吗?您是对的,它的Windows 8.1问题将MenuFlyout属性设置在顶部,这会导致缺陷,因为它位于其他弹出按钮的顶部。
我找到的唯一解决方案是在弹出按钮中添加额外的空白菜单项
<Page.BottomAppBar>
<CommandBar>
<CommandBar.Background>
<SolidColorBrush Color="#FF1F1F1F" Opacity="0.4"/>
</CommandBar.Background>
<!--app bar basic shape-->
<AppBarButton x:Name="BaseShapeMenu" Label="Hình cơ bản">
<AppBarButton.Icon>
<FontIcon FontFamily="Segoe UI Symbol" Glyph="▭"/>
</AppBarButton.Icon>
<AppBarButton.Flyout>
<MenuFlyout x:Name="Flyout_BaseShapeMenu">
<MenuFlyoutItem x:Name="_1" Text="'▭' Rectangle" Tag="stRectangle" />
<MenuFlyoutItem x:Name="_2" Text="'⬬' Ellipse" Tag="stEllipse" />
<MenuFlyoutItem x:Name="_3" Text="'/' Line" Tag="stLine" />
</MenuFlyout>
</AppBarButton.Flyout>
</AppBarButton>
<!--app bar chemical shape-->
<AppBarButton x:Name="ChemicalShape" Label="Hình hóa học">
<AppBarButton.Icon>
<FontIcon FontFamily="Segoe UI Symbol" Glyph="⌬"/>
</AppBarButton.Icon>
<AppBarButton.Flyout>
<MenuFlyout x:Name="Flyout_ChemicalShape">
<MenuFlyoutItem x:Name="_4" Text="'⬡' CycloHexan" Tag="stCycloHexan" />
<MenuFlyoutItem x:Name="_5" Text="'⌬' Benzen" Tag="stBenzen" />
<MenuFlyoutItem x:Name="_6" Text="'⬣' BenzenCircle" Tag="stBenzenCircle" />
<MenuFlyoutItem/>
<MenuFlyoutItem/>
</MenuFlyout>
</AppBarButton.Flyout>
</AppBarButton>
<!--app bar symbol-->
<AppBarButton x:Name="SymbolShape" Label="Ký tự" >
<AppBarButton.Icon>
<FontIcon FontFamily="Segoe UI Symbol" Glyph="♒"/>
</AppBarButton.Icon>
<AppBarButton.Flyout>
<MenuFlyout x:Name="Flypu_SymbolShape">
<MenuFlyoutItem x:Name="_7" Text="'⬡' CycloHexan" Tag="stCycloHexan"/>
<MenuFlyoutItem x:Name="_8" Text="'⌬' Benzen" Tag="stBenzen" />
<MenuFlyoutItem x:Name="_9" Text="'⬣' BenzenCircle" Tag="stBenzenCircle" />
<MenuFlyoutItem/>
<MenuFlyoutItem/>
<MenuFlyoutItem/>
</MenuFlyout>
</AppBarButton.Flyout>
</AppBarButton>
<AppBarButton x:Name="SelectButton" Label="Chọn hình" Icon="Edit"/>
</CommandBar>
</Page.BottomAppBar>
请添加回您的点击事件并删除命名,因为我正在测试您的代码,以给您一个可能的答案,并且必须删除它们
希望这有帮助:)谢谢你的帮助,但不要用任何方法解决这个问题。我必须等待更新的微软的问题,不是吗?再次感谢您的回答。然而,答案并不能满足我的期望。我以前可以这样做,但我不想用这种方式,代码仍然正确地运行。