我有一个带有选项菜单的应用程序栏按钮:
<AppBarButton x:Name="AddButton" x:Uid="AddItem" Icon="Add" RequestedTheme="Dark">
<AppBarButton.Flyout>
<MenuFlyout>
<MenuFlyoutItem Label="Option 1" Click="MenuFlyoutItem_Click" Tag="option1"/>
<MenuFlyoutItem Label="Option 2" Click="MenuFlyoutItem_Click" Tag="option2"/>
<MenuFlyoutItem Label="Option 3" Click="MenuFlyoutItem_Click" Tag="option3"/>
</MenuFlyout>
</AppBarButton.Flyout>
</AppBarButton>其意图是,当用户选择一个选项时,在该窗口允许用户提供更多信息的按钮旁边出现一个飞出窗口,例如:
<Flyout x:Name="MediaTitle">
<Grid>
<TextBlock Text"Title" Style="{StaticResource BaseTextBlockStyle}" />
<TextBox x:Name="descTitle" HorizontalAlignment="Left" Margin="0,30,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="300" />
<Button x:Name="descTitle_OK" x:Uid="OK" HorizontalAlignment="Right" Margin="0,73,0,0" VerticalAlignment="Top" Click="DescTitle_OKClick" />
</Grid>
</Flyout>在“页资源”部分中定义了“飞出”。
在我的代码中,我说:
MediaTitle.ShowAt(AddButton);但是我得到了一个错误“放置目标需要在视觉树中”。
这是因为按钮在AppBar上而不是在页面“适当”上发生的吗?如果是的话,有没有办法解决这个问题?
发布于 2014-02-17 14:03:20
结果,答案很简单--我只需要确保应用程序栏是可见的。然后,在应用程序栏上的按钮附近显示该飞出。
由于我没有显示的逻辑/代码,应用程序栏以前是关闭的。
https://stackoverflow.com/questions/21800116
复制相似问题