Это очень тривиальная проблема, но я не могу найти способ ее решения. Меня это раздражает, потому что я чувствую, что должен знать ответ на этот вопрос, но я либо ищу неправильные термины, либо ищу неправильные методы и свойства.
У меня есть диалоговое окно конфигурации, которое вызывается из двух мест.
Первая - кнопка в форме, которая работает правильно - как и следовало ожидать.
Второй из контекстного меню на notifyIcon в системном трее, но здесь он появляется в левом верхнем углу экрана. В идеале мне бы хотелось, чтобы он отображался по центру основного экрана или, возможно, рядом с системным треем.
Я пытался установить Location
, но, кажется, он перезаписывается при вызове dialog.ShowDialog()
.
Я пытался использовать перегрузку dialog.ShowDialog(IWin32Window)
, но мне не показалось, что я передаю null
в качестве дескриптора окна.
Я пытался использовать dialog.Show()
вместо этого, но (и здесь я могу ошибаться) установка местоположения не дает согласованных результатов.
Я даже пытался установить свойство dialog.Parent
- что, конечно, вызвало исключение.
Я просто знаю, что пойму, что ответ очевиден, когда я (надеюсь) вижу некоторые ответы, но в данный момент я полностью застрял.
Спасибо за ответы - как я и подозревал, это было очевидно, но, как обычно, я застрял в том, чтобы смотреть не по тому маршруту. Еще более раздражает то, что я использовал это свойство и из конструктора.