Array
(
)

É possível Definir colunas para um DataTable temporário?

Itamar Souza
   - 28 fev 2014


Amigos, bom dia a todos.
Estou precisando definir as colunas e suas características para um DataTable temporário, e não deixar ele gera as colunas, os dados estão inserindo corretamente, tenho o meu grid:

<asp:GridView ID="GridResumoTotal" runat="server" Height="2px"
Width="100%" AutoGenerateColumns="true" >
</asp:GridView>
Eu queria definir o meu grid com os campos e formatação sem usar o AutoGenerateColumns
Agradeço imensamente a ajuda!
Estou fazendo desta forma:

Citação:

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//dataTable para guarda dados temporario
dtb = CriaDataTable();
Session["mDatatable"] = dtb;
GridResumoTotal.DataSource = ((DataTable)Session["mDatatable"]).DefaultView;
GridResumoTotal.DataBind();
}
//criar um DataTable temporário
private DataTable CriaDataTable()
{
DataTable mDataTable = new DataTable();
DataColumn mDataColumn;
mDataColumn = new DataColumn();
mDataColumn.DataType = Type.GetType("System.String");
mDataColumn.ColumnName = "MODALIDADE";
mDataTable.Columns.Add(mDataColumn);
mDataColumn = new DataColumn();
mDataColumn.DataType = Type.GetType("System.String");
mDataColumn.ColumnName = "QTD_OBJ_16";
mDataTable.Columns.Add(mDataColumn);
mDataColumn = new DataColumn();
mDataColumn.DataType = Type.GetType("System.String");
mDataColumn.ColumnName = "QTD_OBJ_17";
mDataTable.Columns.Add(mDataColumn);
return mDataTable;
}
private void incluirNoDataTable(string modalidade, string qtd_obj16, string qtd_obj_17, DataTable mTable)
{
DataRow linha;
linha = mTable.NewRow();
//gera o número GUID
//linha["CODIGO"] = Guid.NewGuid().ToString();
linha["MODALIDADE"] = modalidade;
linha["QTD_OBJ_16"] = qtd_obj16;
linha["QTD_OBJ_17"] = qtd_obj_17;
mTable.Rows.Add(linha);
}

GridResumoTotal.Columns.Clear();
incluirNoDataTable("TOTAL GERAL DIA : ", footer.Cells[16].Text,footer.Cells[17].Text, (DataTable)Session["mDatatable"]);
GridResumoTotal.DataSource = ((DataTable)Session["mDatatable"]).DefaultView;
GridResumoTotal.DataBind();