Я только что попробовал это, и это сработало для меня ( примечание : этот код должен появиться после форма была отображена в первый раз - например, вы можете поставить его в обработчике событий формы Load
или просто включите его после любого вызова Show
):
Rectangle workingArea = System.Windows.Forms.Screen.PrimaryScreen.WorkingArea;
int left = workingArea.Width - this.Width;
int top = workingArea.Height - this.Height;
this.Location = new Point(left, top);
Использование WorkingArea
или Bounds
зависит от того, что вы подразумеваете под «над»: если вы имеете в виду «перед», то используйте Bounds
, поскольку оно включает область, охватывающую весь экран (включая пространство, занимаемое системным треем); если вы имеете в виду «выше», тогда используйте WorkingArea
, который включает в себя только рабочий стол пользователя.
Также позвольте мне пояснить, что вы хотите, чтобы ваша фактическая форма отображалась там, верно? Если вам нужна иконка в области уведомлений, для этого нужен компонент NotifyIcon
.