/// <summary>
/// Perform docking element specific actions for loading a child xml.
/// </summary>
/// <param name="xmlReader">Xml reader object.</param>
/// <param name="pages">Collection of available pages.</param>
/// <param name="child">Optional reference to existing child docking element.</param>
protected override void LoadChildDockingElement(XmlReader xmlReader,
KryptonPageCollection pages,
IDockingElement child)
{
if (child != null)
{
child.LoadElementFromXml(xmlReader, pages);
}
else
{
Size dockspaceSize = _defaultDockspaceSize;
string elementSize = xmlReader.GetAttribute("S");
// Cache the loading size
if (!string.IsNullOrEmpty(elementSize))
{
dockspaceSize = CommonHelper.StringToSize(elementSize);
}
// Create a new dockspace and then reload it
KryptonDockingDockspace dockspace = AppendDockspace(xmlReader.GetAttribute("N"), dockspaceSize);
dockspace.LoadElementFromXml(xmlReader, pages);
}
}