Hi,
on my computer,if I drag a ContentPane out of the XamDockManager,the resulting floating pane does not have an icon in the upper left corner, regardless of the Image property being set or not.
I think that this is the desired behavior because the Image property is only for the tab headers. This is also what I want.
However, on a coworker's computer (same code),if I drag a ContentPane out of the XamDockManager,the resulting floating pane always shows the default Windows icon in the upper left corner.
How can I prevent that (I don't know what setting on his computer causes this behavior)?
I am using this code to hide the standard Windows icon for non-DockManager child windows in my application, and this works on both computers:
protected override void OnSourceInitialized(EventArgs e){ base.OnSourceInitialized(e); IntPtr hwnd = new WindowInteropHelper(window).Handle; // Change the extended window style to not show a window icon var extendedStyle = GetWindowLong(hwnd, GWL_EXSTYLE); SetWindowLong(hwnd, GWL_EXSTYLE, extendedStyle | WS_EX_DLGMODALFRAME); // Update the window's non-client area to reflect the changes SetWindowPos(hwnd, IntPtr.Zero, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED); SendMessage(hwnd, WM_SETICON, new IntPtr(1), IntPtr.Zero); SendMessage(hwnd, WM_SETICON, IntPtr.Zero, IntPtr.Zero);}
Unfortunately I have no access to ToolWindowHostWindow, so I cannot do the same for floating panes in the XamDockManager. Calling this code in the ToolWindowLoaded event handler doesn't do anything.
Thanks,
Tjark