We are using telerik RadDesktopAlerts and even though they work well with a single monitor and we can calculate the offset to show them in multi monitors, this fails when:
1) One or more screens are in portrait mode
2) Using with a 4k Monitor (
3) Using with an ultra wide monitor
We are using Win 10
6 Answers, 1 is accepted
Thank you for the description.
If you calculate the offset, it is strange that the alert fails in the described environment.
Let me ask a couple of questions:
- How many monitors are in the setup?
- Do they have different resolutions?
- What are their resolutions?
- How are they positioned in the display settings (1,2 or 2,1)?
- Which is your primary monitor?
- From which side your primary monitor stands (left or right)?
I've prepared a sample project which demonstrates the relative positioning of the alert on a dual monitor setup. I used the Screen.AllScreens property to get the size of my two monitors and set the offset according to them. I have tested it with monitors with different resolutions, if one is in portrait mode and with various positions of the displays. Please, review it and let me know if you find it helpful.
Looking forward to your reply.
Hi Dimitar, thanks for the sample app!
To answer your questions:
1. 3 monitor setup
2. yes different resolution
2. 1 different (3840x2160) and 2 1920x1200
3. positioned 1-3-2 (1920, 3840, 1200 portrait ) respectively
4. Primary is 3 (3840x2160)
5. Primary monitor is centered. 1 to left, 2 to right
The sample app you sent still doesn't work for us. It appears fine on the primary monitor (4k), but on the second monitor (in portrait) it appears on the left/center of the bottom of the dialog.
Our solution needs to be able to detect any monitor layout: 4 monitor workstations is not unusual for example.
Thank you for the response.
The reason why it didn't work properly on your configuration is because the project was implemented to work with two monitors only. I now switched to a three monitor setup and was able to reproduce the described behavior by following your description.
I've modified the project so that an alert that shows on all screens, no matter what their resolutions or positions are. It should also work with any number of monitors. I've also added a button that displays an alert depending on which monitor the MainWindow is currently located.
Please, review the attached project and let me know if it delivered the desired result.
It seems that the difference between the monitors' DPI makes the alert behave like this. I will need some time to develop a solution and will contact you in the beginning of next week.
Meanwhile, if you have any further queries, don't hesitate to contact me.
I've updated the project to work with any number of monitors, no matter what their resolutions or DPIs are. Note, that this solution only works if the alert position is set to BottomRight.
Please, let me know if the project was helpful.