前回の記事では、Flyout 添付プロパティを持つコントロールで、ポップアップメッセージを表示しました。
今回は TextBlock や Image のように Flyout 添付プロパティを持たないコントロールでポップアップメッセージを表示する方法について説明します。
環境
| 開発環境 | Microsoft Visual Studio Professional 2019 Preview Version 16.11.0 Preview 3.0 |
| Framework | Microsoft .NET Framework Version 4.8.04084 |
| その他 | Microsoft.Project Reunion 0.8.0-preview |
| Microsoft.ProjectReunion.Foundation 0.8.0-preview | |
| Microsoft.ProjectReunion.WinUI 0.8.0-preview | |
| Microsoft.UI.Xaml 2.6.1 |
添付プロパティを使用せずに Flyout でポップアップメッセージを表示する
TextBlock ように、添付プロパティに Flyout を持っていない場合は、<FlyputBase.AttachedFlyout> を使用して、Flyout 機能を付加します。これによって、ポップアップメッセージを表示する準備が完了です。
<TextBlock Text="TextBlock" Tapped="TextBlock_Tapped">
<FlyoutBase.AttachedFlyout>
<Flyout>
<TextBlock Text="This is some text in a flyout." />
</Flyout>
</FlyoutBase.AttachedFlyout>
</TextBlock>
TextBlock がタップされた時に以下のコードを実行するとポップアップメッセージが表示されるようになります。
private void TextBlock_Tapped(object sender, TappedRoutedEventArgs e)
{
FlyoutBase.ShowAttachedFlyout((FrameworkElement)sender);
}

添付プロパティを持たないコントロールでポップアップメッセージを表示する例
WinUI 3 Tips一覧
Please follow and like us:

コメント