RoutedEvent 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 peristiwa yang dirutekan ke sistem peristiwa Windows Runtime.
public ref class RoutedEvent sealed
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class RoutedEvent final
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class RoutedEvent
Public NotInheritable Class RoutedEvent
- Warisan
- Atribut
Contoh
Contoh ini menunjukkan sintaks dasar untuk mengabeli penanganan aktivitas dengan AddHandler dan handledEventsToo sebagai true
. Dalam hal ini peristiwa yang sedang dikabeli diketuk, dan RoutedEvent
pengidentifikasi -type yang digunakan dalam contohnya adalah TappedEvent. Tempat umum untuk penanganan kabel dimuat untuk halaman atau OnApplyTemplate untuk kontrol templat.
void MainPage::pageRoot_Tapped(Platform::Object^ sender, Windows::UI::Xaml::Input::TappedRoutedEventArgs^ e)
{
//implementation
}
void MainPage::pageRoot_Loaded(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
this->AddHandler(UIElement::TappedEvent, ref new TappedEventHandler(this, &MainPage::pageRoot_Tapped), true);
}
private void pageRoot_Tapped(object sender, TappedRoutedEventArgs e)
{
//implementation
}
private void pageRoot_Loaded_1(object sender, RoutedEventArgs e)
{
this.AddHandler(UIElement.TappedEvent, new TappedEventHandler(pageRoot_Tapped), true);
}
Keterangan
Catatan
Sistem peristiwa Windows Runtime tidak memungkinkan Anda membuat peristiwa rute kustom; hanya Windows Runtime itu sendiri yang dapat menentukan peristiwa sehingga memiliki perilaku peristiwa yang dirutekan.
Untuk informasi selengkapnya tentang cara kerja peristiwa yang dirutekan, lihat Gambaran umum peristiwa dan peristiwa yang dirutekan. Jenis ini RoutedEvent
adalah bagian dari infrastruktur untuk peristiwa yang dirutekan, tetapi Anda tidak menggunakan RoutedEvent
langsung dalam pemrograman aplikasi Windows Runtime umum.
Tujuan dari RoutedEvent
jenis ini adalah untuk berfungsi sebagai pengidentifikasi untuk sistem peristiwa Windows Runtime, mirip dengan bagaimana DependencyProperty menyediakan jenis pengidentifikasi untuk sistem properti dependensi. UIElement mencakup beberapa properti statis baca-saja dari jenis RoutedEvent
, yang diberi nama menggunakan pola penamaan. Setiap RoutedEvent
properti dinamai sesuai dengan peristiwa ditambah akhiran "Peristiwa". Setiap properti tersebut adalah pengidentifikasi untuk peristiwa yang dirutekan yang namanya dimulai. Misalnya, TappedEvent mengidentifikasi peristiwa yang dirutekan yang disadap ke sistem peristiwa.
Untuk sebagian besar penggunaan kode aplikasi, cukup merujuk peristiwa berdasarkan nama di XAML atau dengan nama entitas kodenya dalam kode adalah semua yang diperlukan untuk mereferensikan peristiwa pada objek, untuk tujuan menambahkan atau menghapus penangan. Pengidentifikasi RoutedEvent
hanya diperlukan saat Anda melampirkan handler yang harus dipanggil bahkan ketika peristiwa yang dirutekan sebelumnya ditandai sebagai ditangani oleh sistem atau kode aplikasi. API yang Anda gunakan untuk skenario ini, dan API yang menggunakan RoutedEvent
nilai sebagai parameter, adalah UIElement.AddHandler dan UIElement.RemoveHandler. Untuk informasi selengkapnya, lihat Gambaran umum peristiwa dan peristiwa yang dirutekan.
Peristiwa yang menggunakan pengidentifikasi RoutedEvent
Berikut adalah daftar peristiwa yang dirutekan yang memiliki RoutedEvent
pengidentifikasi dan dengan demikian dapat menggunakan teknik UIElement.AddHandler yang kami jelaskan:
- DoubleTapped
- DragEnter
- SeretLeave
- SeretOver
- Drop
- Memegang
- KeyDown
- KeyUp
- ManipulationCompleted
- ManipulasiDelta
- ManipulasiInertiaStarting
- ManipulasiStarted
- ManipulasiStarting
- PointerCanceled
- PointerCaptureLost
- PointerEntered
- PointerExited
- PointerMoved
- PointerPressed
- PointerReleased
- PointerWheelChanged
- RightTapped
- Mengetuk
Catatan
GotFocus dan LostFocus bertindak seperti peristiwa yang dirutekan tetapi tidak memiliki RoutedEvent
pengidentifikasi, sehingga Anda tidak dapat menggunakan AddHandler dengannya.
Berlaku untuk
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk