2014-09-29 2 views
0

Здесь я сообщаю пример моего предупреждения:Настройка положения окна оповещения

http://oi60.tinypic.com/4lt8d2.jpg

Как вы можете видеть на картинке, я не могу взять с собой окно предупреждения выше задач.

Это код, который я поставил poszione окна:

public new void Show() 
    { 
     this.Left = Application.Current.MainWindow.Left + 
      Application.Current.MainWindow.ActualWidth - this.Width; 
     this.Top = Application.Current.MainWindow.Top + 
      Application.Current.MainWindow.ActualHeight - this.Height; 

     this.Topmost = true; 

     Application.Current.MainWindow.Dispatcher.BeginInvoke(
      System.Windows.Threading.DispatcherPriority.ApplicationIdle, 
       (System.Threading.ThreadStart)delegate() 
       { 
        base.Show(); 
       }); 
    } 
+0

На вашем снимке экрана предупреждение находится над панелью задач. В чем проблема? – Herdo

+0

Предупреждение должно быть слегка выше и самое левое. – iamwill

+0

@ Возможно, что «сверху» означает «сверху» на оси Y (то есть op хочет, чтобы он * не * перекрывал панель задач), но я просто догадываюсь – Alex

ответ

0

Вы можете использовать некоторые полезные данные в SystemParameters правильно расположить окно. В частности, вам необходимо получить SystemParameters.WorkArea.Bottom. Код должен быть таким:

this.Left = SystemParameters.WorkArea.Right - this.ActualWidth; 
this.Top = SystemParameters.WorkArea.Bottom - this.ActualHeight; 
+0

Таким образом мое окно предупреждения опускается ниже экрана. У меня есть что-то вроде этого: [link] (http://oi61.tinypic.com/5kghv6.jpg) – iamwill

+0

@iamwill Я использовал это для некоторых моих проектов. Я думаю, что *** Taskbar *** автоматически скрывается? (это просто показано, когда вы перемещаете мышь на нижнем краю экрана?). Если он исправлен, я не думаю, что смещение такое большое. –

+0

Также, пожалуйста, используйте именно код, который я разместил. Из вашего изображения я вижу, что 'Top' окна точно находится в« Нижнем »WorkArea, это означает, что« ActualHeight »** ** **? Это не имеет большого смысла. На самом деле может быть какое-то смещение, но это должно быть немного (по моему опыту). –

Смежные вопросы