オプションのメニューを備えたアプリバーボタンがあります。
<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>
Flyout は、ページ リソース セクションで定義されます。
私のコードでは、次のようにします。
MediaTitle.ShowAt(AddButton);
しかし、「配置ターゲットはビジュアルツリーにある必要があります」というエラーが表示されます。
これは、ボタンが「適切な」ページではなく AppBar にあるために発生していますか? もしそうなら、これを修正する方法はありますか?