public XmlNode GetXml(XmlDocument xDoc, XmlNode parent = null) { XmlNode xLayout = XmlAdder.Element(xDoc, "Tab", parent); if (_layoutPanel is FlowLayoutPanel) { XmlNode flow = XmlAdder.Element(xDoc, "Flow", xLayout); for (int i = 0; i < _layoutPanel.Controls.Count; i++) { XmlNode com = XmlAdder.Element(xDoc, "Component", flow); Control control = _layoutPanel.Controls[i]; XmlAdder.Attribute(xDoc, "Width", control.Width.ToString(), com); XmlAdder.Attribute(xDoc, "Height", control.Height.ToString(), com); IXmlComponent xRealCom = control as IXmlComponent; if (xRealCom != null) { xRealCom.GetXml(xDoc, com); } } } else //Panel { XmlNode panel = XmlAdder.Element(xDoc, "Panel", xLayout); for (int i = 0; i < _layoutPanel.Controls.Count; i++) { XmlNode com = XmlAdder.Element(xDoc, "Component", panel); Control control = _layoutPanel.Controls[i]; XmlAdder.Attribute(xDoc, "Width", control.Width.ToString(), com); XmlAdder.Attribute(xDoc, "Height", control.Height.ToString(), com); XmlAdder.Attribute(xDoc, "X", control.Location.X.ToString(), com); XmlAdder.Attribute(xDoc, "Y", control.Location.Y.ToString(), com); IXmlComponent xRealCom = control as IXmlComponent; if (xRealCom != null) { xRealCom.GetXml(xDoc, com); } } } return(xLayout); }
public XmlNode GetXml(XmlDocument xDoc, XmlNode parent = null) { XmlNode xLayout = XmlAdder.Element(xDoc, "Layout", parent); XmlAdder.Attribute(xDoc, "Dock", this.Dock.ToString(), xLayout); switch (this.Dock) { case DockStyle.Fill: break; case DockStyle.Left: case DockStyle.Right: XmlAdder.Attribute(xDoc, "Width", this.Width.ToString(), xLayout); break; case DockStyle.Top: case DockStyle.Bottom: XmlAdder.Attribute(xDoc, "Height", this.Height.ToString(), xLayout); break; case DockStyle.None: XmlAdder.Attribute(xDoc, "Width", this.Width.ToString(), xLayout); XmlAdder.Attribute(xDoc, "Height", this.Height.ToString(), xLayout); XmlAdder.Attribute(xDoc, "X", this.Location.X.ToString(), xLayout); XmlAdder.Attribute(xDoc, "Y", this.Location.Y.ToString(), xLayout); break; } if (this.BackgroundImage != null) { XmlAdder.Attribute(xDoc, "Background-Image", _backgroundImage_Path, xLayout); } if (this.BackColor.Equals(Color.Transparent) == false) { XmlAdder.Attribute(xDoc, "Background-Color", this.BackColor.ToString(), xLayout); } if (_layoutPanel is FlowLayoutPanel) { XmlNode flow = XmlAdder.Element(xDoc, "Flow", xLayout); for (int i = 0; i < _layoutPanel.Controls.Count; i++) { //XmlComponent xCom = new XmlComponent(_layoutPanel, _idList, _namespace); XmlNode com = XmlAdder.Element(xDoc, "Component", flow); Control control = _layoutPanel.Controls[i]; XmlAdder.Attribute(xDoc, "Width", control.Width.ToString(), com); XmlAdder.Attribute(xDoc, "Height", control.Height.ToString(), com); XmlAdder.Attribute(xDoc, "Name", control.Name, com); XmlAdder.Attribute(xDoc, "Name", control.Name, com); IXmlComponent xRealCom = control as IXmlComponent; if (xRealCom != null) { xRealCom.GetXml(xDoc, com); } } } else //Panel { XmlNode panel = XmlAdder.Element(xDoc, "Panel", xLayout); for (int i = 0; i < _layoutPanel.Controls.Count; i++) { XmlNode com = XmlAdder.Element(xDoc, "Component", panel); Control control = _layoutPanel.Controls[i]; XmlAdder.Attribute(xDoc, "Width", control.Width.ToString(), com); XmlAdder.Attribute(xDoc, "Height", control.Height.ToString(), com); XmlAdder.Attribute(xDoc, "X", control.Location.X.ToString(), com); XmlAdder.Attribute(xDoc, "Y", control.Location.Y.ToString(), com); IXmlComponent xRealCom = control as IXmlComponent; if (xRealCom != null) { xRealCom.GetXml(xDoc, com); } } } return(xLayout); }