Как изменить местоположение MessageBox?

Мне нужно изменить расположение окна сообщения. Я не хочу, чтобы он находился в центре страницы.

MessageBox.Show("Hello");

Ответ 1

Обычно вы не можете изменить начальное местоположение стандартного окна сообщений.

Решения для вашего вопроса:

Ответ 2

Вам нужно будет создать новую форму, которая наследуется от формы MessageBox. Это единственный способ получить доступ к свойствам позиции.

Ответ 3

Есть способ изменить местоположение, но его слишком сложный для такой небольшой задачи.
Если вам действительно нужно изменить свое местоположение, вы можете отобразить его, затем используйте GetForegroundWindow, чтобы получить дескриптор окна, а затем MoveWindow в нужное место.
Но, как я уже навязывал, это слишком сложно.
Просто создайте свою собственную форму с меткой на ней кнопкой "ОК". Установите кнопку в качестве кнопки окна по умолчанию, а затем в Form1 do MyWndName.ShowDialog();

Ответ 4

Что вы можете сделать, так это создать новое окно, установить для свойства AllowsTransparency значение true и установить Background to Transparent. В этом окне вы можете поместить TextBlock или метку, а также добавить кнопки Yes/No. Задайте местоположение этого окна с помощью Canvs .SetTop(Window, TopPosition) и Canvas.SetLeft(Window, LeftPosition). затем вызовите окно с помощью метода Show() или ShowDialog().