Bagikan melalui


Window.SizeChanged Kejadian

Definisi

Terjadi saat jendela aplikasi pertama kali dirender atau telah mengubah ukuran penyajiannya.

public:
 virtual event WindowSizeChangedEventHandler ^ SizeChanged;
// Register
event_token SizeChanged(WindowSizeChangedEventHandler const& handler) const;

// Revoke with event_token
void SizeChanged(event_token const* cookie) const;

// Revoke with event_revoker
Window::SizeChanged_revoker SizeChanged(auto_revoke_t, WindowSizeChangedEventHandler const& handler) const;
public event WindowSizeChangedEventHandler SizeChanged;
function onSizeChanged(eventArgs) { /* Your code */ }
window.addEventListener("sizechanged", onSizeChanged);
window.removeEventListener("sizechanged", onSizeChanged);
- or -
window.onsizechanged = onSizeChanged;
Public Custom Event SizeChanged As WindowSizeChangedEventHandler 

Jenis Acara

Keterangan

Peristiwa ini terjadi setiap kali ada perubahan dalam nilai Batas untuk jendela aplikasi. Ini mungkin karena pengguna mengubah ukuran aplikasi Anda atau mengubah orientasi tampilan. Pemicu lain adalah jika pengguna memindahkan aplikasi Anda ke tampilan baru yang memiliki resolusi berbeda dan jendela aplikasi diperluas untuk mengisinya.

Window.SizeChanged adalah peristiwa yang harus ditangani untuk mendeteksi bahwa pengguna telah dengan sengaja mengubah ukuran aplikasi Anda atau memutar tampilan pada PC yang mendeteksi orientasi. Anda mungkin ingin mendeteksi bahwa jendela aplikasi telah berubah dari lanskap menjadi orientasi potret atau sebaliknya. Orientasi jendela aplikasi mungkin memengaruhi bagaimana Anda ingin kontrol individual dalam jendela aplikasi muncul. Misalnya, Anda mungkin ingin menampilkan daftar data dalam ListView untuk orientasi potret, tetapi dalam GridView untuk orientasi lanskap. Biasanya Anda akan membandingkan rasio Window.Current.Bounds.Width dengan Window.Current.Bounds.Height untuk menentukan orientasi berdasarkan Batas, dan Anda akan melakukan ini setiap kali Window.SizeChanged diaktifkan. Persis bagaimana Anda menafsirkan rasio lebar/tinggi terserah Anda.

Jika Anda melampirkan handler untuk Window.SizeChanged di tingkat Halaman dalam handler untuk peristiwa FrameworkElement.Loaded , Anda harus melepaskan handler tersebut di penanganan aktivitas FrameworkElement.Unloaded dari Halaman tersebut. Instans Window.Current tetap aktif di antara navigasi halaman dan seharusnya hanya memiliki handler yang aktif untuk kode halaman terbaru.

Handler Window.SizeChanged bukanlah cara Anda memberlakukan ukuran minimum yang dapat diubah ukuran aplikasi Anda. Itu dikendalikan oleh manifes aplikasi. Namun, logika Anda untuk mengubah status visual harus dapat memuat status yang dirancang untuk lebar minimum yang Anda inginkan, dan Anda biasanya menggunakan nilai Batas dan penanganan Window.SizeChanged untuk mendeteksi kapan jendela aplikasi menggunakan lebar minimum.

Untuk informasi selengkapnya tentang cara menggunakan Window.SizeChanged untuk mendeteksi perubahan di lingkungan jendela aplikasi dan memuat status visual yang sesuai untuk aplikasi Anda, lihat Mulai Cepat: Mendesain aplikasi untuk ukuran jendela yang berbeda.

Ada peristiwa lain bernama SizeChanged yang ada pada jenis turunan FrameworkElement (Jendela bukan jenis FrameworkElement ). Peristiwa FrameworkElement.SizeChanged mungkin diaktifkan dalam banyak keadaan yang sama yang menyebabkan Window.SizeChanged diaktifkan. Perubahan ukuran jendela aplikasi dapat menyebabkan elemen visual akar (biasanya Halaman atau panel) mengubah ukurannya. Ini mengatur kaskade invalidasi tata letak untuk sublemen apa pun yang menggunakan tata letak adaptif untuk mengisi ruang yang tersedia. Setiap elemen yang memiliki dimensi baru karena kode tata letak akan mengaktifkan peristiwa FrameworkElement.SizeChanged sendiri.

Berlaku untuk

Lihat juga