У меня есть приложение winforms, которое функционирует как система оповещения, однако многие люди, которые будут использовать мою программу, будут иметь несколько экранов. Предупреждения чувствительны к времени, поэтому в идеале я бы хотел, чтобы они отображались на всех экранах, или чтобы можно было указать экран, чтобы пользователь, скорее всего, заметил это. По умолчанию на главном экране появляются сообщения, и я не могу найти информацию о том, что действительно нужно делать с winforms и разными мониторами.
Даже не обязательно должен быть полем сообщений, если есть еще одна функция winform, которую можно сделать для выполнения той же функции, но также и с несколькими экранами, которые были бы замечательными.
На боковой ноте можно ли закрыть несколько ящиков сообщений только из 1 принимаемых?
Я думаю, что проще всего создать пользовательскую форму, а не использовать существующее окно сообщений. Таким образом вы можете использовать метод Show
а не ShowDialog
. Это позволит вам показать несколько форм и закрыть все из них одним ответом.
Что касается размещения их на нескольких экранах: вы можете найти существующие экраны с помощью System.Windows.Forms.Screen.AllScreens
. Каждый из них имеет свойство Bounds
которое покажет вам, какие координаты и размер каждого экрана. После создания каждой настраиваемой формы вы можете указать свойство Location
чтобы поместить его на выбранный вами экран.