I am creating an application that is intended to be used in a multi-monitor setup, and I am running into a couple of issues. The main window of the application uses WindowState="None" in order to cover the entire screen (including the taskbar). The primary monitor on the computer will always be my application, and I intended on using the XamDockManager's PaneToolWindows to allow the user to move parts of the functionality to other windows. I am using UseOSNonClientArea="False" on the PaneToolWindow so that I can style the window, but I have confirmed that these issues are present even without the custom style (but with UseOSNonClientArea still set to "False").
Here are the issues I am facing:
Is there a way to handle the window size calculation for when the PaneToolWindow is maximized? If I can handle it myself, I can deal with both of these issues.
Sorry. You should be able to see it now. As to when it will be available, it should be part of the next SR scheduled to be released in late June.
Andrew,
I don't currently have it listed under my support activity listings. When do you think this would make it into the product?
Thanks.
I have logged this behavior in our internal tracking system with a Development ID of 219903. This is associated with your private case for this issue (CAS-173581-K6X8K0) so that you can track the progress of this issue. You can access it at http://es.infragistics.com/my-account/support-activity.
Please let me know if you have any questions on this.
Andrew Smith said:Perhaps we could add something to the ToolWindow that you would set in the ToolWindowLoaded to indicate that it should use the full monitor size when maximized although likely that would only be applicable when UseOSNonClientArea is false (which I know is your case but may not be obvious to someone else who sees the property on their but I guess as long as its documented as such). Would that work for you? It would only affect the next time the window is maximized likely - not if it's changed while maximized.
This would work perfectly for our needs (a truly full-screen application). We're using v2016.1, if that helps any.
Thanks for the speedy response.
Both of the described issues is actually expected. When UseOSNonClientArea is false (explicitly or implicitly), the derived Window used to host the ToolWindow has its WindowState set to None and ResizeMode set to None in order to remove all the OS non-client area and then the non-client area is provided/simulated using elements within the ToolWindow's template. However because we want that toolwindow to behave like a window that would have non-client area we specifically control the maximized position of the window and as such the toolwindow is supposed to exclude the taskbar (just as a normal window would when you maximize it regardless of whether the owning window is maximized and covers the taskbar). The part about being 1 pixel smaller on a system that has no taskbar (or more accurately where the monitor size and the working size of the monitor are equal) is required because otherwise the OS treats the window as full screen and will not allow for an auto-hide taskbar to be shown. Perhaps we could add something to the ToolWindow that you would set in the ToolWindowLoaded to indicate that it should use the full monitor size when maximized although likely that would only be applicable when UseOSNonClientArea is false (which I know is your case but may not be obvious to someone else who sees the property on their but I guess as long as its documented as such). Would that work for you? It would only affect the next time the window is maximized likely - not if it's changed while maximized.