Flyout Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mewakili kontrol yang menampilkan UI ringan yang merupakan informasi, atau memerlukan interaksi pengguna. Tidak seperti dialog, Flyout dapat dimatikan dengan mengklik atau mengetuk di luarnya, menekan tombol kembali perangkat, atau menekan tombol 'Esc'.
/// [Microsoft.UI.Xaml.Markup.ContentProperty(Name="Content")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Flyout : FlyoutBase
[Microsoft.UI.Xaml.Markup.ContentProperty(Name="Content")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class Flyout : FlyoutBase
Public Class Flyout
Inherits FlyoutBase
<Flyout>
singleUIElement
</Flyout>
- Warisan
- Atribut
Contoh
Tip
Untuk informasi selengkapnya, panduan desain, dan contoh kode, lihat Flyout.
Aplikasi WinUI 3 Gallery mencakup contoh interaktif sebagian besar kontrol, fitur, dan fungsi WinUI 3. Dapatkan aplikasi dari Microsoft Store atau dapatkan kode sumber di GitHub
Keterangan
Flyout menampilkan pesan yang memerlukan interaksi pengguna.
Gunakan kontrol Flyout untuk mengumpulkan informasi, untuk menampilkan info selengkapnya, atau untuk peringatan dan konfirmasi. Tidak seperti dialog, Flyout tidak membuat jendela terpisah, dan tidak memblokir interaksi pengguna lain. Untuk menampilkan menu item, gunakan MenuFlyout sebagai gantinya. Untuk informasi selengkapnya, termasuk XAML dan contoh kode, lihat Flyout.
Kontrol Flyout (atau MenuFlyout) digunakan sebagai nilai properti Button.Flyout . Ini biasanya diatur dalam XAML sebagai bagian dari definisi UI halaman. Tombol adalah satu-satunya kontrol yang memiliki properti Flyout khusus. Untuk mengaitkan Flyout dengan kontrol lain, gunakan properti terlampir FlyoutBase.AttachedFlyout . Saat diatur sebagai Button.Flyout, Flyout akan ditampilkan saat tombol diketuk atau dipanggil. Saat Flyout ditetapkan ke elemen UI lain menggunakan FlyoutBase.AttachedFlyout, Anda harus memanggil metode ShowAt atau metode ShowAttachedFlyout statis untuk menampilkan flyout.
Selain anggota yang tercantum dalam topik referensi ini, ada anggota lain dari kelas dasar FlyoutBase yang sering digunakan dalam skenario Flyout umum:
- FlyoutBase.AttachedFlyout: properti terlampir yang mengaitkan Flyout dengan elemen UI tertentu (ini bisa menjadi kelas turunan FrameworkElement apa pun).
- ShowAttachedFlyout: metode statis yang dapat menentukan apakah flyout sudah dikaitkan dengan elemen UI melalui penugasan FlyoutBase.AttachedFlyout . Jika demikian, metode memanggil ShowAt secara internal, menggunakan FrameworkElement yang Anda tentukan.
Aksesibilitas
Jika Anda menggunakan Flyout tanpa konten yang dapat difokuskan-misalnya, hanya dengan teks, seperti yang ditunjukkan di sini- Anda harus mengambil beberapa langkah tambahan untuk memastikan bahwa konten Anda dapat diakses. Secara khusus, Anda perlu memastikan bahwa Windows Narrator atau pembaca layar lainnya dapat membaca konten flyout.
Secara default, ada properti yang diatur pada FlyoutPresenter yang mencegahnya menerima fokus. Ini adalah perilaku yang diinginkan ketika konten di dalam Flyout dapat menerima fokus. Namun, jika konten di dalam Flyout tidak dapat menerima fokus, Anda harus memperbarui ke FlyoutPresenterStyle untuk membiarkan FlyoutPresenter menerima fokus sebagai gantinya. Untuk melakukan ini, atur UIElement.IsTabStop ke true dan TabNavigation ke Siklus pada gaya penyaji flyout.
Contoh ini menunjukkan cara membiarkan FlyoutPresenter menerima fokus sehingga konten dapat diakses.
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Button VerticalAlignment="Center" HorizontalAlignment="Center"
Content="Open flyout">
<Button.Flyout>
<Flyout>
<Flyout.FlyoutPresenterStyle>
<Style TargetType="FlyoutPresenter">
<Setter Property="ScrollViewer.HorizontalScrollMode" Value="Disabled"/>
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Disabled"/>
<Setter Property="IsTabStop" Value="True"/>
<Setter Property="TabNavigation" Value="Cycle"/>
</Style>
</Flyout.FlyoutPresenterStyle>
<TextBlock TextWrapping="Wrap" Text="This is some text in a flyout."/>
</Flyout>
</Button.Flyout>
</Button>
</Grid>
Konstruktor
Flyout() |
Menginisialisasi instans baru kelas Flyout . |
Properti
AllowFocusOnInteraction |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah elemen secara otomatis mendapatkan fokus saat pengguna berinteraksi dengannya. (Diperoleh dari FlyoutBase) |
AllowFocusWhenDisabled |
Mendapatkan atau mengatur nilai yang menentukan apakah kontrol dapat menerima fokus saat dinonaktifkan. (Diperoleh dari FlyoutBase) |
AreOpenCloseAnimationsEnabled |
Mendapatkan atau mengatur nilai yang menunjukkan apakah animasi diputar saat flyout dibuka atau ditutup. (Diperoleh dari FlyoutBase) |
Content |
Mendapatkan atau mengatur konten Flyout. |
ContentProperty |
Mendapatkan pengidentifikasi untuk properti dependensi Konten . |
Dispatcher |
Selalu kembali |
DispatcherQueue |
|
ElementSoundMode |
Mendapatkan atau mengatur nilai yang menentukan preferensi kontrol untuk apakah ia memutar suara. (Diperoleh dari FlyoutBase) |
FlyoutPresenterStyle |
Mendapatkan atau mengatur Gaya yang diterapkan ke konten Flyout . |
FlyoutPresenterStyleProperty |
Mendapatkan pengidentifikasi untuk properti dependensi FlyoutPresenterStyle . |
InputDevicePrefersPrimaryCommands |
Mendapatkan nilai yang menunjukkan apakah perangkat input yang digunakan untuk membuka flyout tidak dengan mudah membuka perintah sekunder. (Diperoleh dari FlyoutBase) |
IsConstrainedToRootBounds |
Mendapatkan nilai yang menunjukkan apakah flyout ditampilkan dalam batas akar XAML. Properti ini selalu berlaku untuk aplikasi SDK Aplikasi Windows. (Diperoleh dari FlyoutBase) |
IsOpen |
Mendapatkan nilai yang menunjukkan apakah flyout terbuka. (Diperoleh dari FlyoutBase) |
LightDismissOverlayMode |
Mendapatkan atau menetapkan nilai yang menentukan apakah area di luar UI pengalihan cahaya digelapkan. (Diperoleh dari FlyoutBase) |
OverlayInputPassThroughElement |
Mendapatkan atau mengatur elemen yang harus menerima peristiwa input pointer bahkan ketika di bawah overlay flyout. (Diperoleh dari FlyoutBase) |
Placement |
Mendapatkan atau menetapkan penempatan default yang akan digunakan untuk flyout, sehubungan dengan target penempatannya. (Diperoleh dari FlyoutBase) |
ShouldConstrainToRootBounds |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah flyout harus ditampilkan dalam batas akar XAML. (Diperoleh dari FlyoutBase) |
ShowMode |
Mendapatkan atau menetapkan nilai yang menunjukkan bagaimana flyout berperilaku saat ditampilkan. (Diperoleh dari FlyoutBase) |
SystemBackdrop |
Mendapatkan atau mengatur latar belakang sistem untuk diterapkan ke flyout ini. Latar belakang dirender di belakang konten flyout. (Diperoleh dari FlyoutBase) |
Target |
Mendapatkan elemen untuk digunakan sebagai target penempatan flyout. (Diperoleh dari FlyoutBase) |
XamlRoot |
Mendapatkan atau mengatur XamlRoot tempat flyout ini dilihat. (Diperoleh dari FlyoutBase) |
Metode
ClearValue(DependencyProperty) |
Menghapus nilai lokal properti dependensi. (Diperoleh dari DependencyObject) |
CreatePresenter() |
Saat ditimpa di kelas turunan, menginisialisasi kontrol untuk menampilkan konten flyout yang sesuai untuk kontrol turunan. Catatan: Metode ini tidak memiliki implementasi kelas dasar dan harus ditimpa dalam kelas turunan. (Diperoleh dari FlyoutBase) |
GetAnimationBaseValue(DependencyProperty) |
Mengembalikan nilai dasar apa pun yang ditetapkan untuk properti dependensi, yang akan berlaku dalam kasus di mana animasi tidak aktif. (Diperoleh dari DependencyObject) |
GetValue(DependencyProperty) |
Mengembalikan nilai efektif properti dependensi saat ini dari DependencyObject. (Diperoleh dari DependencyObject) |
Hide() |
Menutup flyout. (Diperoleh dari FlyoutBase) |
OnProcessKeyboardAccelerators(ProcessKeyboardAcceleratorEventArgs) |
Dipanggil tepat sebelum pintasan keyboard (akselerator) diproses di aplikasi Anda. Dipanggil setiap kali kode aplikasi atau proses internal memanggil ProcessKeyboardAccelerators. Ambil alih metode ini untuk memengaruhi penanganan akselerator default. (Diperoleh dari FlyoutBase) |
ReadLocalValue(DependencyProperty) |
Mengembalikan nilai lokal properti dependensi, jika nilai lokal ditetapkan. (Diperoleh dari DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Mendaftarkan fungsi pemberitahuan untuk mendengarkan perubahan pada DependencyProperty tertentu pada instans DependencyObject ini. (Diperoleh dari DependencyObject) |
SetValue(DependencyProperty, Object) |
Mengatur nilai lokal properti dependensi pada DependencyObject. (Diperoleh dari DependencyObject) |
ShowAt(DependencyObject, FlyoutShowOptions) |
Memperlihatkan flyout yang ditempatkan sehubungan dengan elemen yang ditentukan menggunakan opsi yang ditentukan. (Diperoleh dari FlyoutBase) |
ShowAt(FrameworkElement) |
Memperlihatkan flyout yang ditempatkan dalam kaitannya dengan elemen yang ditentukan. (Diperoleh dari FlyoutBase) |
TryInvokeKeyboardAccelerator(ProcessKeyboardAcceleratorEventArgs) |
Mencoba memanggil pintasan keyboard (akselerator). (Diperoleh dari FlyoutBase) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Membatalkan pemberitahuan perubahan yang sebelumnya terdaftar dengan memanggil RegisterPropertyChangedCallback. (Diperoleh dari DependencyObject) |
Acara
Closed |
Terjadi ketika flyout disembunyikan. (Diperoleh dari FlyoutBase) |
Closing |
Terjadi ketika flyout mulai disembunyikan. (Diperoleh dari FlyoutBase) |
Opened |
Terjadi ketika flyout ditampilkan. (Diperoleh dari FlyoutBase) |
Opening |
Terjadi sebelum flyout ditampilkan. (Diperoleh dari FlyoutBase) |