Starting with version 2.0, ChildWindow (and MessageBox) is derived from WindowControl and no longer manages its parent’s background or the positioning of itself based on its parent’s size. The old version of ChildWindow will remain available, but obsolete.
A WindowContainer should now be used to contain these controls. It provides an area where WindowControl-derived controls (ChildWindow or MessageBox controls) can be displayed. This is particularly interesting in an XBAP application where windows can't be popped up. In this case the WindowContainer can be sized to fit the application and the window-like control can be moved around in the WindowContainer.
The WindowContainer derives from Canvas and positions its children according to its size. Many actions performed on its children are managed by the WindowContainer (movement and positioning, resizing, visibility, modal, and mouse click). This will restrict the WindowControl movements and resizing to the WindowContainer’s size.
When no Width and Height are specified in the WindowContainer, its DesiredSize will be the size of its biggest child.
Example
The following example shows how to create a ChildWindow (and a MessageBox).
<xctk:WindowContainer><xctk:ChildWindowWindowBackground="Blue"Left="75"Top="50"Width="275"Height="125"WindowState="Open"><TextBlockText="This is a Child Window"Padding="10"/></xctk:ChildWindow><xctk:ChildWindowWindowBackground="Green"Left="175"Top="125"Width="275"Height="125"WindowState="Open"><TextBlockText="This is another Child Window"Padding="10"/></xctk:ChildWindow><xctk:MessageBoxCaption="MessageBox"Text="This is a MessageBox"/></xctk:WindowContainer>
Target Platforms: Windows 11, Windows 10, Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2