Moin,
Ich habe mir ein kleines Tool erstellt, dass mir alle User eines Terminal-Servers auflistet.
Ich möchte, dass der Benutzername bei aktiver Sitzung Bold und bei getrennter Sitzung Italic ist.
Jeder Datensatz basiert auf einer Klassendefinition von SessionModel:
Die Daten lasse ich mir über quser zurückgeben und setze pro Sitzung eine Row vom Objekt SessionModel in das DataGrid:
Unten zu sehen, die vorletzte Zeile, dort entscheide ich über den FontStyle.
Ich binde nun den Textblock des Benutzers an diesen FontStyle:
Die Schrift bleibt allerdings Standard, wie alle anderen Zeilen auch.
Ich habe mir Haltepunkte gesetzt und mir die Werte in der Überwachung anzeigen lassen, da ist alles richtig, wie ich es gerne hätte.
Funktioniert hier das Binding nicht? Denn wenn ich direkt Italic oder Bold eintrage im XAML, passt es natürlich.
Ähnlich habe ich das ja für die Visiblilty der Tooltips gemacht ( letzte Zeile ).
Hier funktioniert es allerdings richtig, die Tooltips werden nur angezeigt, wenn die Sitzung aktiv ist.
Vielleicht hat ja jemand einen Hinweis für mich, warum das mit dem FontStyle nicht läuft?
Danke und Gruß
Arne
EDIT: Zur Info, da es als CrossPosting bewertet werden könnte.
Da einige Tage keine Teilnahme stattfand, habe ich mich entschlossen, in einem weiteren Forum zu fragen.
Ich habe mir ein kleines Tool erstellt, dass mir alle User eines Terminal-Servers auflistet.
Ich möchte, dass der Benutzername bei aktiver Sitzung Bold und bei getrennter Sitzung Italic ist.
Jeder Datensatz basiert auf einer Klassendefinition von SessionModel:
Code:
public class SessionModel { public int SessionId { get; set; } public string SessionName { get; set; } public string UserName { get; set; } public string SessionStatus { get; set; } public string IdleTime { get; set; } public string ServerName { get; set; } public bool IsAdminSession { get; set; } public DateTime LogonTime { get; set; } public bool IsActive { get; set; } public FontStyle TextStyle { get; set; } public System.Windows.Visibility IsVisible { get; set; } }
Code:
SessionData.Add( new SessionModel { ServerName = "SRV-02A" // currently static , UserName = user , SessionName = session_name , SessionId = Convert.ToInt32(session_id) , SessionStatus = SessionStatusTranslation[status] , LogonTime = DateTime.Parse(logon) , IsAdminSession = user.Contains("admin") , IdleTime = idle , IsActive = SessionStatusTranslation[status] == "Aktiv" , TextStyle = SessionStatusTranslation[status] == "Aktiv" ? System.Drawing.FontStyle.Bold : System.Drawing.FontStyle.Italic , IsVisible = SessionStatusTranslation[status] == "Aktiv" ? Visibility.Visible : Visibility.Hidden } );
Ich binde nun den Textblock des Benutzers an diesen FontStyle:
Code:
<TextBlock Text="{Binding UserName}" Padding="5" FontSize="18" FontStyle="{Binding TextStyle}"/>
Ich habe mir Haltepunkte gesetzt und mir die Werte in der Überwachung anzeigen lassen, da ist alles richtig, wie ich es gerne hätte.
Funktioniert hier das Binding nicht? Denn wenn ich direkt Italic oder Bold eintrage im XAML, passt es natürlich.
Ähnlich habe ich das ja für die Visiblilty der Tooltips gemacht ( letzte Zeile ).
Hier funktioniert es allerdings richtig, die Tooltips werden nur angezeigt, wenn die Sitzung aktiv ist.
Vielleicht hat ja jemand einen Hinweis für mich, warum das mit dem FontStyle nicht läuft?
Danke und Gruß
Arne
EDIT: Zur Info, da es als CrossPosting bewertet werden könnte.
Da einige Tage keine Teilnahme stattfand, habe ich mich entschlossen, in einem weiteren Forum zu fragen.