nHydrate.Generator.Models.Table.CreateDataTable C# (CSharp) Method

CreateDataTable() protected method

protected CreateDataTable ( ) : System.Data.DataTable
return System.Data.DataTable
        protected internal System.Data.DataTable CreateDataTable()
        {
            var retval = new System.Data.DataSet();
            var t = retval.Tables.Add(this.Name);
            foreach (var column in this.GetColumns())
            {
                var c = t.Columns.Add(column.Name, typeof(string));
            }
            return retval.Tables[0];
        }

Usage Example

		public RowEntryCollectionForm(Table table)
			: this()
		{
			_table = table;

			this.dataGridView1.Columns.Clear();

			//Setup Columns
			var dt = table.CreateDataTable();
			var columnCount = dt.Columns.Count;

			//Add Data
			foreach (RowEntry rowEntry in table.StaticData)
			{
				//Create a row
				var dr = dt.NewRow();
				dt.Rows.Add(dr);

				//Loop through the items and create datarows
				var count = System.Math.Min(rowEntry.CellEntries.Count, columnCount);
				for (var ii = 0; ii < count; ii++)
				{
					var cellEntry = rowEntry.CellEntries[ii];
					var staticColumn = cellEntry.ColumnRef.Object as Column;
					if ((staticColumn != null) && dt.Columns.Contains(staticColumn.Name))
					{
						dr[staticColumn.Name] = cellEntry.Value;
						//_loadedColumnList.Add(cellEntry.ColumnRef.Object as Column);
					}
				}
			}

			//Bind the grid
			this.dataGridView1.DataSource = dt;

		}