Rumah >pembangunan bahagian belakang >C++ >Bagaimana Saya Boleh Menyembunyikan Butang Tutup dalam Tetingkap WPF Semasa Masih Memelihara
Menyembunyikan Butang Tutup dalam Windows WPF
Dalam aplikasi WPF, mencipta dialog ragam selalunya melibatkan penyembunyian butang tutup sambil mengekalkan bar tajuk. Walaupun WPF tidak mempunyai sifat terbina dalam untuk tujuan khusus ini, adalah mungkin untuk menyembunyikan butang tutup menggunakan gabungan P/Invoke dan pengendalian acara.
Untuk menekan butang tutup, mulakan dengan menambah pengisytiharan yang diperlukan:
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);
Seterusnya, dalam acara Window's Loaded, laksanakan perkara berikut kod:
var hwnd = new WindowInteropHelper(this).Handle; SetWindowLong(hwnd, GWL_STYLE, GetWindowLong(hwnd, GWL_STYLE) & ~WS_SYSMENU);
Ini akan menyembunyikan butang tutup bersama-sama dengan ikon tetingkap dan menu sistem.
Pertimbangan Penting
Perhatikan bahawa sementara ini kaedah menyembunyikan butang tutup, ia tidak menghalang pengguna daripada menutup tetingkap melalui cara alternatif seperti menekan Alt F4 atau menutup aplikasi daripada bar tugas.
Untuk mengelakkan penutupan tetingkap sepenuhnya sebelum syarat tertentu dipenuhi, adalah disyorkan untuk mengatasi acara OnClosing dan menetapkan Batal kepada benar. Ini boleh dilakukan bersama-sama dengan teknik P/Invoke untuk menyediakan penyelesaian lengkap untuk melumpuhkan penutupan tetingkap.
Atas ialah kandungan terperinci Bagaimana Saya Boleh Menyembunyikan Butang Tutup dalam Tetingkap WPF Semasa Masih Memelihara. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!