Heim > Backend-Entwicklung > C++ > Wie kann ich die Schaltfläche „Schließen' in einem WPF-Fenster ausblenden und dabei die beibehalten?

Wie kann ich die Schaltfläche „Schließen' in einem WPF-Fenster ausblenden und dabei die beibehalten?

Mary-Kate Olsen
Freigeben: 2025-01-01 12:06:11
Original
509 Leute haben es durchsucht

How Can I Hide the Close Button in a WPF Window While Keeping the

Schließen-Schaltfläche in WPF-Fenstern ausblenden

Frage: Wie kann ich die Schließen-Schaltfläche in einem WPF-Fenster ausblenden? unter Beibehaltung einer normalen Titelleiste?

WPF verfügt nicht über eine integrierte Option zum Entfernen der Schaltfläche „Schließen“ aus dem Titel eines Fensters Bar. Dies kann jedoch mit P/Invoke erreicht werden:

Code:

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);

// In the Window's Loaded event
var hwnd = new WindowInteropHelper(this).Handle;
SetWindowLong(hwnd, GWL_STYLE, GetWindowLong(hwnd, GWL_STYLE) & ~WS_SYSMENU);
Nach dem Login kopieren

Dieser Code verbirgt die Schaltfläche zum Schließen zusammen mit dem Fenstersymbol und dem Systemmenü.

Hinweis: Bei diesem Ansatz wird nur die Schaltfläche ausgeblendet. Das Fenster kann weiterhin über Tastaturkürzel oder durch Schließen der Anwendung geschlossen werden.

Um zu verhindern, dass das Fenster geschlossen wird, wenn ein Hintergrundthread ausgeführt wird, überschreiben Sie die OnClosing-Methode und setzen Sie Cancel auf true:

protected override void OnClosing(CancelEventArgs e)
{
    e.Cancel = true;
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich die Schaltfläche „Schließen' in einem WPF-Fenster ausblenden und dabei die beibehalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage