I need to apply a ScaleTransform on XamDockManager, I did a test and everything works perfectly except for PaneToolWindow and DockingIndicator. If I apply ScaleTransform on PaneToolWindow, the window is shown cut. On DockingIndicator not have been able to act and the indicators are shown misaligned. Is there a way to solve these problems?
Thanks for reply.
The docking indicators not being lined up properly is a bug so I submitted this for review. I'm not sure what you mean about the PaneToolWindows but basically since those are separate top level windows, the scaletransform you might apply to the xamDockManager or one of its ancestors will not apply to that element. You could handle the ToolWindowLoaded event and set or bind the LayoutTransform of the e.WIndow as needed.
I have the need to accomplish a sort of zoom, and if I setted ScaleTransform property only in XamDockManager the PaneToolWindow comes not magnified, while I need that all elements undergo zoom.However, if I set LayoutTransform in the ToolWindowLoaded event, I get the same behavior, the PaneToolWindow is shown cut.
Try setting the LayoutTransform on the root split pane instead of the e.Window. E.g.
Ok I see a problem when dragging the pane into a floating state multiple times. I'll create another issue for this.
If I do this:
e.Window.Pane.LayoutTransform = new ScaleTransform(3, 3);
I magnified only the content of the PaneToolWindow but I want zoom the whole PaneToolWindow.Then I do this:
e.Window.LayoutTransform = new ScaleTransform(3, 3);
But in this way the PaneToolWindow is shown cut.
Can someone help me? To me this is a bug.
I agree that it's a bug which I why I indicated in my previous reply that I would get the issue written up. An issue has already been submitted and a support case assigned with your account.
Yes I had put both approaches in the issue. To be honest I'm not sure which of those two will be supported at this point - possibly both. I'm guessing at least the latter since in a standard WPF window, the non-client area does not honor the layouttransform and setting it on the PaneToolWindow would affect that non-client area depending on whether it is using the os non-client area or not. The second approach currently does have an issue if you drag the pane into a floating state multiple times.
Ok, but the bug that I see, is on this statement e.Window.LayoutTransform = new ScaleTransform (3, 3); and not on this e.Window.Pane.LayoutTransform = new ScaleTransform (3, 3); is different.
Has you reported also this problem (e.Window.LayoutTransform = new ScaleTransform (3, 3);)?