Rumah >pembangunan bahagian belakang >C++ >Cara Menyembunyikan Butang Tutup dalam Tetingkap WPF Semasa Menyimpan
Menyembunyikan Butang Tutup dalam Windows WPF
Dalam WPF, mencipta dialog modal memerlukan tetingkap tanpa butang tutup sambil mengekalkan bar tajuk yang boleh dilihat . Walaupun meneroka sifat seperti ResizeMode, WindowState dan WindowStyle, tiada satu pun daripada mereka memenuhi keperluan khusus ini.
Untuk menangani perkara ini, anda boleh menggunakan P/Invoke untuk memanipulasi gaya tetingkap dan mencapai gelagat yang diingini. Begini cara untuk melakukannya:
Tambahkan pengisytiharan berikut pada kelas Window anda:
private const int GWL_STYLE = -16; private const int WS_SYSMENU = 0x80000; [DllImport("user32.dll", SetLastError = true)] private static extern int GetWindowLong(IntPtr hWnd, int nIndex); [DllImport("user32.dll")] private static extern int SetWindowLong(IntPtr hWnd, int nIndex, int dwNewLong);
Dalam acara Window's Loaded, masukkan ini kod:
var hwnd = new WindowInteropHelper(this).Handle; SetWindowLong(hwnd, GWL_STYLE, GetWindowLong(hwnd, GWL_STYLE) & ~WS_SYSMENU);
Dengan melaksanakan kod ini, anda akan berjaya menyembunyikan butang tutup daripada bar tajuk, memastikan pengalaman dialog mod yang lebih intuitif.
Pertimbangan Penting:
Sementara penyelesaian ini menyembunyikan butang tutup secara visual , ia tidak menghalang pengguna daripada menutup tetingkap menggunakan pintasan papan kekunci (cth., Alt F4) atau melalui bar tugas. Untuk mengelakkan penutupan tetingkap pramatang, pertimbangkan untuk mengatasi peristiwa OnClosing dan tetapkan Batal kepada benar.
Atas ialah kandungan terperinci Cara Menyembunyikan Butang Tutup dalam Tetingkap WPF Semasa Menyimpan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!