internal void OnDateViewExportColumnHeader(DataColumn dataColumn, ColumnNode sheetColumn, object context)
 {
     if (DateViewExportColumnHeader != null)
     {
         DateViewExportColumnHeader(dataColumn, sheetColumn, context);
     }
 }
Beispiel #2
0
        public override void FromXmlNode(XmlNode node)
        {
            this.ExpandedColumnCount = XmlHelper.GetAttributeValue(node, "ExpandedColumnCount", 0);
            this.ExpandedRowCount    = XmlHelper.GetAttributeValue(node, "ExpandedRowCount", 0);

            this.DefaultColumnWidth = XmlHelper.GetAttributeValue(node, "DefaultColumnWidth", 0.0);
            this.DefaultRowHeight   = XmlHelper.GetAttributeValue(node, "DefaultRowHeight", 0.0);
            this.LeftCell           = XmlHelper.GetAttributeValue(node, "LeftCell", 0);
            this.TopCell            = XmlHelper.GetAttributeValue(node, "TopCell", 0);
            this.StyleID            = XmlHelper.GetAttributeText(node, "StyleID");

            this.FullColumns = XmlHelper.GetAttributeValue(node, "FullColumns", Namespaces.x, false);
            this.FullRows    = XmlHelper.GetAttributeValue(node, "FullRows", Namespaces.x, false);

            XmlNodeList columnNodes = node.SelectNodes("ss:Column", Namespaces.GetNamespaceManager());

            foreach (XmlNode columnNode in columnNodes)
            {
                ColumnNode column = new ColumnNode();

                column.FromXmlNode(columnNode);

                Columns.Add(column);
            }

            XmlNodeList rowNodes = node.SelectNodes("ss:Row", Namespaces.GetNamespaceManager());

            foreach (XmlNode rowNode in rowNodes)
            {
                RowNode row = new RowNode();

                row.FromXmlNode(rowNode);

                Rows.Add(row);
            }
        }
Beispiel #3
0
        private static void FillIntoWorksheet(WorksheetNode worksheet, DataView view, DataViewExportOptions options)
        {
            foreach (DataColumn column in view.Table.Columns)
            {
                if (options.IgnoredColumnNames.Exists(c => c == column.ColumnName) == false)
                {
                    ColumnNode columnNode = new ColumnNode();

                    columnNode.Caption = column.ColumnName;

                    options.OnDateViewExportColumnHeader(column, columnNode, options.Context);

                    worksheet.Table.Columns.Add(columnNode);
                }
            }

            bool isFirstRow = true;

            if (options.ExportColumnHeader)
            {
                RowNode rowNode = BuildHeaderRow(view.Table.Columns);

                if (options.StartRow > 0)
                {
                    rowNode.Index = options.StartRow;
                }

                worksheet.Table.Rows.Add(rowNode);

                isFirstRow = false;
            }

            foreach (DataRowView drv in view)
            {
                RowNode rowNode = new RowNode();

                if (isFirstRow)
                {
                    if (options.StartRow > 0)
                    {
                        rowNode.Index = options.StartRow;
                    }

                    isFirstRow = false;
                }

                bool isFirstColumn = true;

                foreach (DataColumn column in view.Table.Columns)
                {
                    if (options.IgnoredColumnNames.Exists(c => c == column.ColumnName) == false)
                    {
                        CellNode cellNode = new CellNode();

                        cellNode.Data.Type = GetCellDataType(column);
                        object dataValue = drv[column.ColumnName];

                        if (dataValue != null)
                        {
                            if (cellNode.Data.Type == CellDataType.DateTime && (dataValue is DateTime))
                            {
                                cellNode.Data.Value = string.Format("{0:yyyy-MM-ddTHH:mm:ss}", dataValue);
                                cellNode.StyleID    = "NormalDateTime";
                            }
                            else
                            {
                                cellNode.Data.Value = dataValue.ToString();
                            }
                        }

                        if (isFirstColumn)
                        {
                            if (options.StartColumn > 0)
                            {
                                cellNode.Index = options.StartColumn;
                            }

                            isFirstColumn = false;
                        }

                        options.OnDateViewExportColumnData(column, cellNode, dataValue, options.Context);

                        rowNode.Cells.Add(cellNode);
                    }
                }

                worksheet.Table.Rows.Add(rowNode);
            }
        }
Beispiel #4
0
		public override void FromXmlNode(XmlNode node)
		{
			this.ExpandedColumnCount = XmlHelper.GetAttributeValue(node, "ExpandedColumnCount", 0);
			this.ExpandedRowCount = XmlHelper.GetAttributeValue(node, "ExpandedRowCount", 0);

			this.DefaultColumnWidth = XmlHelper.GetAttributeValue(node, "DefaultColumnWidth", 0.0);
			this.DefaultRowHeight = XmlHelper.GetAttributeValue(node, "DefaultRowHeight", 0.0);
			this.LeftCell = XmlHelper.GetAttributeValue(node, "LeftCell", 0);
			this.TopCell = XmlHelper.GetAttributeValue(node, "TopCell", 0);
			this.StyleID = XmlHelper.GetAttributeText(node, "StyleID");

			this.FullColumns = XmlHelper.GetAttributeValue(node, "FullColumns", Namespaces.x, false);
			this.FullRows = XmlHelper.GetAttributeValue(node, "FullRows", Namespaces.x, false);

			XmlNodeList columnNodes = node.SelectNodes("ss:Column", Namespaces.GetNamespaceManager());

			foreach (XmlNode columnNode in columnNodes)
			{
				ColumnNode column = new ColumnNode();

				column.FromXmlNode(columnNode);

				Columns.Add(column);
			}

			XmlNodeList rowNodes = node.SelectNodes("ss:Row", Namespaces.GetNamespaceManager());

			foreach (XmlNode rowNode in rowNodes)
			{
				RowNode row = new RowNode();

				row.FromXmlNode(rowNode);

				Rows.Add(row);
			}
		}
		private static void FillIntoWorksheet(WorksheetNode worksheet, DataView view, DataViewExportOptions options)
		{
			foreach (DataColumn column in view.Table.Columns)
			{
				if (options.IgnoredColumnNames.Exists(c => c == column.ColumnName) == false)
				{
					ColumnNode columnNode = new ColumnNode();

					columnNode.Caption = column.ColumnName;

					options.OnDateViewExportColumnHeader(column, columnNode, options.Context);

					worksheet.Table.Columns.Add(columnNode);
				}
			}

			bool isFirstRow = true;

			if (options.ExportColumnHeader)
			{
				RowNode rowNode = BuildHeaderRow(view.Table.Columns);

				if (options.StartRow > 0)
					rowNode.Index = options.StartRow;

				worksheet.Table.Rows.Add(rowNode);

				isFirstRow = false;
			}

			foreach (DataRowView drv in view)
			{
				RowNode rowNode = new RowNode();

				if (isFirstRow)
				{
					if (options.StartRow > 0)
						rowNode.Index = options.StartRow;

					isFirstRow = false;
				}

				bool isFirstColumn = true;

				foreach (DataColumn column in view.Table.Columns)
				{
					if (options.IgnoredColumnNames.Exists(c => c == column.ColumnName) == false)
					{
						CellNode cellNode = new CellNode();

						cellNode.Data.Type = GetCellDataType(column);
						object dataValue = drv[column.ColumnName];

						if (dataValue != null)
						{
							if (cellNode.Data.Type == CellDataType.DateTime && (dataValue is DateTime))
							{
								cellNode.Data.Value = string.Format("{0:yyyy-MM-ddTHH:mm:ss}", dataValue);
								cellNode.StyleID = "NormalDateTime";
							}
							else
								cellNode.Data.Value = dataValue.ToString();
						}

						if (isFirstColumn)
						{
							if (options.StartColumn > 0)
								cellNode.Index = options.StartColumn;

							isFirstColumn = false;
						}

						options.OnDateViewExportColumnData(column, cellNode, dataValue, options.Context);

						rowNode.Cells.Add(cellNode);
					}
				}

				worksheet.Table.Rows.Add(rowNode);
			}
		}