2016-09-19 3 views
0

Ich habe ein Problem mit der Positionierung eines Fensters. Das Fenster ist nicht mein Hauptfenster. Ich möchte das Fenster in der unteren rechten Ecke meines Arbeitsbereichs über einer Taskleiste positionieren.Position des Benachrichtigungsfensters in der unteren rechten Ecke

Ich habe folgenden Code:

public partial class NotificationWindow : Window 
{ 
    public NotificationWindow() 
    { 
     InitializeComponent(); 
    } 

    private void Window_Loaded(object sender, RoutedEventArgs e) 
    { 
     Rect desktopWorkingArea = SystemParameters.WorkArea; 
     Left = desktopWorkingArea.Right - Width; 
     Top = desktopWorkingArea.Bottom - Height; 
    } 
} 

und unerwünschtes Ergebnis dieses Code:

enter image description here

Ich mag ein wenig höher über der Taskleiste das Benachrichtigungsfenster haben. Ich denke mein Code sollte funktionieren, tut es aber nicht.

Danke für den Rat.

+0

ein Offset oder herauszufinden Taskleiste der Größe hinzufügen - https://winsharp93.wordpress.com/2009/06/29/find-out-size-and-position-of-the-taskbar/ –

Antwort

1

Ich habe dies mit zufriedenstellendem Ergebnis verwendet.

double width = 375; 
double height = 275; 

Window w = new Window(); 
w.Width = width; 
w.Height = height; 
w.Left = SystemParameters.FullPrimaryScreenWidth - width; 
w.Top = SystemParameters.FullPrimaryScreenHeight - height; 

w.ShowDialog(); 
+0

Oh, es funktioniert. Vielen Dank! –

Verwandte Themen