Feedback

C# - Überprüfen ob Glass verfügbar ist

Veröffentlicht von am 29.12.2006
(3 Bewertungen)
Unter Vista gibt es einen tollen Effekt namens "Glass". Mit diesem kann man den Hintergrund von Winforms wie ein Milchglass erscheinen lassen. So wird abgefragt ob Glass verfügbar ist:
GFU-Schulungen  [Anzeige]

C# Komplett

Sie kennen sich in objektorientierter Programmierung aus. Sie schreiben C++ oder Java? Und nun stehen Sie vor der Aufgabe, in C# Anwendungen zu erstellen. Das C# Komplett-Seminar verschafft Ihnen umfassende Programmierkenntnisse in dieser Sprache. Nach der Schulung entwickeln Sie selbständig Anwendungen mit C#. Sie kennen die Datentypen und Klassenbibliotheken der objektorientierten Programmiersprache C#. Der Komplettkurs setzt bei den Grundlagen von C# ein. Sie arbeiten mit Variablen und konvertieren Typen. Multithreading, Delegates, Generics sind nach dem Seminar für Sie kein Geheimnis mehr.

C# 2017/2015/2013 Aufbau

In dieser Schulung lernen Sie fortgeschrittene Techniken im Bereich .Net C#. Dabei stehen neben den eigentlichen Techniken auch architektonische Aspekte im Mittelpunkt.

private bool isGlassAvailable()
{
	[DllImport("dwmapi.dll")]static extern void DwmIsCompositionEnabled(ref bool pfEnabled);
	bool isGlassSupported = false;
	DwmIsCompositionEnabled(ref isGlassSupported);
	return isGlassSupported;
}
Abgelegt unter Vista, Glass.

5 Kommentare zum Snippet

Koopakiller schrieb am 02.03.2013:
Soweit nicht schlecht, aber es wird eine Exception geworfen wenn man es unter einem älteren Windows als Vista ausführt. Diese würde ich gleich in der Methode abfangen und dann false zurück geben.
dariusarnold schrieb am 03.03.2013:
Und was nützt eim zu wissen ob das Verfügbar ist??

Ein weiteres Snippet, wie man das einbauen oder anwenden kann wäre super. :)

LG, Darius.
Koopakiller schrieb am 03.03.2013:
Sie dir mal den Internet Explorer 9 oder auchden Windows Explorer an. Die Windows Titelleiste scheint größer zu sein. Wenn man versucht den Effekt zu aktivieren und es schief geht, dann stürtzt die Anwendung entweder ab (Exception) oder es gibt einen schwarzen Hintergrund beides ist unschön, weswegen man es vorher abfragen sollte. Aktivieren kann man den Effekt sobald das Fenster geladen wurde. Dort würde ich die Methode dann auch ausführen.
Zum aktivieren des Effekts, siehe: http://blogs.msdn.com/b/olivers/archive/2011/01/08/windows-7-wie-aktiviert-man-den-aero-glass-effekt-in-wpf-anwendungen.aspx
dariusarnold schrieb am 05.03.2013:
Jo, das ist mir aufgefallen..
Ich wollte nur Ausdrücken - ohne das negativ zu meinen -, dass das Snippet praktischer wäre, wenn die Verwendung des Effektes zumindest verlinkt wäre, aber Danke für den Luink.. :) Hat auch jemand was für WinForms??
Koopakiller schrieb am 06.03.2013:
Direkt zu WinForms hab ich jetzt auch nichts, aber im Grunde läufts genauso ab. Nur das man das Handle anders bekommt:
IntPtr hwnd = new WindowInteropHelper(window).Handle; //WPF
IntPtr hwnd = form.Handle;//WinForms

Wichtig dabei ist das form die Instanz der Form ist, die du "transparent" gestalten willst.
Eine Verlinkung wäre aber wirklich nicht schlecht ;)
 

Logge dich ein, um hier zu kommentieren!