List<TableColumn> _Items; // list of TableColumn internal TableColumns(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p) { TableColumn tc; _Items = new List<TableColumn>(); // Loop thru all the child nodes foreach(XmlNode xNodeLoop in xNode.ChildNodes) { if (xNodeLoop.NodeType != XmlNodeType.Element) continue; switch (xNodeLoop.Name) { case "TableColumn": tc = new TableColumn(r, this, xNodeLoop); break; default: tc=null; // don't know what this is // don't know this element - log it OwnerReport.rl.LogError(4, "Unknown TableColumns element '" + xNodeLoop.Name + "' ignored."); break; } if (tc != null) _Items.Add(tc); } if (_Items.Count == 0) OwnerReport.rl.LogError(8, "For TableColumns at least one TableColumn is required."); else _Items.TrimExcess(); }