WPF: Windows-7-Integration
Vorschaufenster
Windows 7 blendet ein kleines Vorschaufenster ein, wenn die Maus über einen Eintrag in der Taskleiste bewegt wird. Dieses zeigt standardmäßig den Inhalt des jeweiligen Fensters an. Um die Aufmerksamkeit der Anwender auf bestimmte Aspekte zu lenken, bietet WPF 4 die Möglichkeit, die Vorschau auf einen bestimmten Teil des Fensters zu beschränken. Dazu bietet die Klasse Window eine Eigenschaft TaskbarItemInfo an. Über diese kann ein ThumbnailClipMargin, der angibt, wie viel Platz neben den vier Rändern ausgeblendet werden soll, aktiviert werden. In Listing 1 wird beispielsweise festgelegt, dass 20 Pixel vom linken, 30 Pixel vom oberen, 200 Pixel vom unteren und 300 Pixel vom rechten Rand für die Vorschau weggeschnitten werden sollen.
Listing 1
Schaltflächen im Vorschaufenster (Thumbnail-Buttons)
Um eine Applikation zu bedienen, ohne sie in den Vordergrund zu holen, bietet Windows 7 die Möglichkeit, Schaltflächen im Vorschaufenster, zu platzieren. Um dieses Vorschaufenster anzupassen, wurde die Klasse Window in WPF 4 um eine Eigenschaft TaskbarItemInfo, die eine Instanz der gleichnamigen Klasse aufnimmt, erweitert. TaskbarItemInfo enthält unter anderem eine Auflistung ThumbButtonInfos, die Instanzen von ThumbButtonInfo aufnimmt. Jedes ThumbButtonInfo beschreibt dabei ein Button. Listing 2 demonstriert das. Die Eigenschaft DismissWhenClicked legt fest, ob bei Betätigung des Buttons das Vorschaufenster geschlossen werden soll. Die Eigenschaft Description definiert eine Beschreibung des Buttons; ImageSource den Pfad zum anzuzeigenden Symbol und Click die Ereignisbehandlungsroutine, die bei einem Klick aufgerufen werden soll. Dabei gilt zu beachten, dass Windows 7 lediglich bis zu sieben solcher Schaltflächen erlaubt.
Da die Aktionen, die sich hinter diesen Schaltflächen verbergen, häufig auch über andere Wege wie Schaltflächen in der Applikation, Menü- und Symbolleisten aufrufbar sein dürften, besteht alternativ zur Verwendung von Ereignisbehandlungsroutinen die Möglichkeit, über die Eigenschaft Command eine Implementierung von ICommand zu registrieren.
Listing 2
[...]
Symbole und Fortschrittsanzeige in der Taskleiste
Um den Anwender unaufdringlich über Ereignisse und Fortschritte zu informieren, bietet WPF 4 die Möglichkeit, das Symbol in der Taskliste mit einem anderen, kleineren Symbol zu überblenden, um den Benutzer auf bestimmte Sachverhalte aufmerksam zu machen. Das kann man durch das Setzen der Eigenschaft TaskberItemInfo.Overlay erreichen:
this.taskBarItemInfo.Overlay = new BitmapImage(new Uri("img/infoSymbol.ico", UriKind.Relative));
Neben Symbolen kann im Tasklisteneintrag auch eine Fortschrittsanzeige, die durch die Hintergrundfarbe repräsentiert wird, eingeblendet werden. Das folgende Snippet würde zum Beispiel festlegen, dass ein Fortschritt von 50 Prozent gemeldet werden soll:
this.taskBarItemInfo.ProgressValue = 0.5; this.taskBarItemInfo.ProgressState = System.Windows.Shell.TaskbarItemProgressState.Normal;
Über den ProgressValue wird der aktuelle Fortschritt als Double zwischen 0 und 1 ausgedrückt, über den ProgressState der aktuelle Zustand der Abarbeitung. Normal bedeutet, dass alles fein ist und bewirkt eine grünliche Fortschrittsanzeige. Eine Pausierung wird mittels Paused angegeben. Dieser Umstand wird von Windows durch eine gelbliche Fortschrittsanzeige ausgedrückt. Im Fall eines Fehlers kann der ProgressState auf Error gesetzt werden. Das bewirkt eine rötliche Fortschrittsanzeige. Darüber hinaus kann mit dem Wert Indeterminate angegeben werden, dass eine Aufgabe gerade verrichtet wird, ohne dass über den aktuellen Fortschritt informiert wird. In diesem Fall wechselt die Schattierung immer wieder von links nach rechts und vice versa. Zu guter Letzt steht noch die Option None zur Verfügung, die die Fortschrittsanzeige in der Taskbar abschaltet.
Hinterlasse einen Kommentar
Hinterlasse den ersten Kommentar!