Neno Lojes Vista-Tagebuch

Tag 13: Eine gute Figur machen –mit den Vista-Steuerelementen

Die in die Jahre gekommene MessageBox erfreut sich zwar sehr großer Beliebtheit, führte jedoch immer häufiger zu Verwirrungen. Wie oft musste ich den Text mehrfach lesen, bis ich erahnen konnte, welche Auswirkungen ein Klick auf "Ja" oder "Nein" haben würde. Damit soll jetzt Schluss sein, sagt Microsoft und führt den Task „Dialog“ als Nachfolger ein. Er zeichnet sich durch eine Vielfalt an neuen Möglichkeiten aus und erlaubt es, neben erklärenden Texten zu den möglichen Aktionen auch Zusatzinformationen oder Links mit einzubauen.

Die Nutzung des Task Dialogs in eigenen Windows Forms-Applikationen wird im CodeClip "Ein einfacher TaskDialog mit Windows Forms" gezeigt. Für WPF-Anwendungen gibt es gleich drei CodeClips als Anwendungsbeispiel: "Ein einfacher TaskDialog mit WPF", "Ein TaskDialog mit ProgressBar mit WPF" und "Ein komplexer TaskDialog mit WPF".

Wenn es nicht gleich der ganze Task Dialog sein soll, sondern nur der darin verwendete CommandButton, der neben der Beschriftung über einen Beschreibungstext und ein Icon verfügt, kann man diesen auch aus Windows Forms nutzen, wie im CodeClip "CommandLink-Buttons mit Windows Forms" zu sehen ist.

Neue Systemdialoge für das Öffnen und Speichern von Dateien

Auch bei den Systemdialogen zum Öffnen und Speichern hat sich einiges getan. Die neuen Dialoge erinnern sehr stark an den Vista-Explorer - so fühlt man sich leichter in Ihnen zurecht. Wer diese nutzen will, muss sie separat anprogrammieren (es gibt die "alten" Dialog also weiterhin). Wie das geht wird im CodeClip "Die neuen "Datei öffnen-/ speichern"-Standarddialoge nutzen" gezeigt.

Der Speicher-Dialog startet beim ersten Mal im "Mini-Modus", in dem nur die wichtigsten Daten eingegeben werden können.

Per Klick kann man auf die vollständige, die Explorer-ähnliche Sicht umschalten:

Vista-Unterstützung im .NET Framework 2.0 & 3.0 SP1

Für das .NET Framework 2.0 und 3.0 rüstet das Service Pack 1 (wird automatisch bei Installation des .NET Framework 3.5 aufgespielt) einige Vista-Funktionen nach. Zum Beispiel werden automatisch die neuen Vista-System-Dialoge verwendet. Möchten Sie das nicht, müssen Sie das neue Verhalten explizit abschalten durch setzen der Eigenschaft AutoUpgradeEnabled.

Weiterhin kennt die Klasse SystemIcons nun das Shield-Icon, welches unter Windows Vista einen Vorgang kennzeichnet, für den Administratorberechtigungen erforderlich sind.

Nutzen Sie eine der genannten Funktionen auf einem Rechner mit .NET Framework 2.0 oder 3.0 ohne installiertem Service Pack 1, hat das fatale Folgen, denn diese existieren dort nicht. Um zu verhindern, dass man versehentlich neue Klassen oder Mitglieder aus dem SP1 nutzt, kann man sich mit einer Regel für die statische Codeanalyse ("FxCop") behelfen.

Fortschritt grafisch untermalen

Die Fortschrittsanzeige unter Windows Vista kennt neben der normalen (grünen) Anzeige auch den Zustand "angehalten" (= gelb) sowie "Fehler" (= rot). Umstellen können Sie dies über das Windows API.

Die neuen Steuerelemente erlauben es Ihrer Anwendung, unter Vista in nichts nachzustehen. Morgen untersuche ich ein paar spezielle Steuerelemente wie die TreeView und Textboxen vom Explorer. Deren Verhalten weicht von dem der klassischen Controls, die Windows Forms mitbringt, ab.

Einen weiterhin erfolgreichen Tag wünscht Ihnen,

Ihr Neno Loje

Übrigens: Der Explorer sortiert jetzt durchnummerierte Ordner in der korrekten Reihenfolge und nicht mehr alphanumerisch, d.h. die 10 steht jetzt nicht mehr zwischen der 1 und der 2, sondern an der richtigen Stelle. Man muss nun also nicht mehr die Ordner mit "01" usw. benennen. :-)

Neno Loje
Freier Berater & Fachautor
Sie haben Fragen zu Visual Studio Team System (VSTS) oder Anregungen und Kommentare zu meinem Vista-Tagebuch? Dann freue ich mich auf Ihre Nachricht.

* *
* *