Kelas DeferrableEventArgs
Kelas templat yang digunakan untuk jenis argumen peristiwa untuk penangguhan.
Sintaks
template <typename TEventArgsInterface, typename TEventArgsClass>
class DeferrableEventArgs : public TEventArgsInterface;
Parameter
TEventArgsInterface
Jenis antarmuka yang mendeklarasikan argumen untuk peristiwa yang ditangguhkan.
TEventArgsClass
Kelas yang mengimplementasikan TEventArgsInterface.
Anggota
Metode Publik
Nama | Deskripsi |
---|---|
DeferrableEventArgs::GetDeferral | Mendapatkan referensi ke objek Deferral yang mewakili peristiwa yang ditangguhkan. |
DeferrableEventArgs::InvokeAllFinished | Dipanggil untuk menunjukkan bahwa semua pemrosesan untuk menangani peristiwa yang ditangguhkan selesai. |
Keterangan
Instans kelas ini diteruskan ke penanganan aktivitas untuk peristiwa yang ditangguhkan. Parameter templat mewakili antarmuka yang menentukan detail argumen peristiwa untuk jenis peristiwa tertentu yang ditangguhkan, dan kelas yang mengimplementasikan antarmuka tersebut.
Kelas muncul sebagai argumen pertama ke penanganan aktivitas untuk peristiwa yang ditangguhkan. Anda dapat memanggil metode GetDeferral untuk mendapatkan objek Deferral tempat Anda bisa mendapatkan semua informasi tentang peristiwa yang ditangguhkan. Setelah menyelesaikan penanganan peristiwa, Anda harus memanggil Selesai pada objek Deferral. Anda kemudian harus memanggil InvokeAllFinished di akhir metode penanganan aktivitas, yang memastikan bahwa penyelesaian semua peristiwa yang ditangguhkan dikomunikasikan dengan benar.
Persyaratan
Header: event.h
Namespace: Microsoft::WRL
DeferrableEventArgs::GetDeferral
Mendapatkan referensi ke objek Deferral yang mewakili peristiwa yang ditangguhkan.
HRESULT GetDeferral([out, retval] Windows::Foundation::IDeferral** result)
Parameter
result
Pointer yang akan mereferensikan objek Deferral saat panggilan selesai.
Tampilkan Nilai
S_OK jika berhasil; jika tidak, HRESULT yang menunjukkan kesalahan.
DeferrableEventArgs::InvokeAllFinished
Dipanggil untuk menunjukkan bahwa semua pemrosesan untuk menangani peristiwa yang ditangguhkan selesai.
void InvokeAllFinished()
Keterangan
Anda harus memanggil metode ini setelah sumber peristiwa memanggil InvokeAll. Memanggil metode ini mencegah penangguhan lebih lanjut diambil dan memaksa handler penyelesaian untuk mengeksekusi jika tidak ada penahanan yang diambil.