FrameworkElement.LayoutUpdated Kejadian
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.
Terjadi ketika tata letak pohon visual berubah, karena properti yang relevan dengan tata letak mengubah nilai atau beberapa tindakan lain yang menyegarkan tata letak.
// Register
event_token LayoutUpdated(EventHandler<IInspectable> const& handler) const;
// Revoke with event_token
void LayoutUpdated(event_token const* cookie) const;
// Revoke with event_revoker
FrameworkElement::LayoutUpdated_revoker LayoutUpdated(auto_revoke_t, EventHandler<IInspectable> const& handler) const;
public event System.EventHandler<object> LayoutUpdated;
function onLayoutUpdated(eventArgs) { /* Your code */ }
frameworkElement.addEventListener("layoutupdated", onLayoutUpdated);
frameworkElement.removeEventListener("layoutupdated", onLayoutUpdated);
- or -
frameworkElement.onlayoutupdated = onLayoutUpdated;
Public Custom Event LayoutUpdated As EventHandler(Of Object)
<frameworkElement LayoutUpdated="eventhandler"/>
Jenis Acara
Keterangan
LayoutUpdated
adalah peristiwa seumur hidup objek terakhir yang terjadi dalam urutan beban XAML sebelum kontrol siap untuk interaksi. Namun, LayoutUpdated
juga dapat terjadi pada durasi selama masa pakai objek, karena berbagai alasan: perubahan properti, perubahan ukuran jendela, atau permintaan tata letak runtime (UpdateLayout atau templat kontrol yang diubah). Peristiwa LayoutUpdated
diaktifkan setelah semua peristiwa SizeChanged dalam urutan tata letak terjadi.
LayoutUpdated
dapat terjadi ketika objek tempat handler terpasang tidak selalu mengubah apa pun di pohon visual di bawahnya. Misalnya, bayangkan kontainer tata letak di mana ada dua elemen anak yang berbagi ruang. Jika objek pertama mengubah properti yang memaksa tata letak baru, kedua objek mengaktifkan LayoutUpdated karena objek kedua mungkin diposisikan ulang meskipun tata letak anak perusahaannya sendiri tidak berubah.
Saat Anda menangani LayoutUpdated
, jangan mengandalkan nilai pengirim . Untuk LayoutUpdated
, pengirim selalu null
, terlepas dari di mana handler dilampirkan. Hal ini untuk mencegah penangan menetapkan arti apa pun kepada pengirim, seperti menyiratkan bahwa itu adalah elemen tertentu yang menembakkan peristiwa keluar dari pohon visual. LayoutUpdated
menyiratkan bahwa sesuatu di pohon visual keseluruhan telah berubah, dan setiap objek tertentu di mana saja di pohon memiliki opsi untuk menangani kejadian ini. Jika Anda terbiasa dengan desain API render tingkat bawah, Anda dapat sama-sama LayoutUpdated
diaktifkan seperti bendera "redraw needed" yang diatur sebagai bagian dari logika penyajian mode yang digerakkan objek dan dipertahankan.
Karena LayoutUpdated
diaktifkan dalam banyak keadaan dan tidak selalu spesifik untuk objek yang benar-benar berubah, pertimbangkan apakah menangani peristiwa SizeChanged sebagai gantinya lebih sesuai untuk skenario Anda.
Berlaku untuk
Lihat juga
Saran dan Komentar
Kirim dan lihat umpan balik untuk