如何动态地将多个列添加到Gridview中 [英] How Can I Add Dynamically More Than One Columns Into The Gridview
本文介绍了如何动态地将多个列添加到Gridview中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
先生,
贝娄是我从textbox中的数据动态创建gridview中的列的代码。但问题是我可以在gridview中添加一列。
如果有人知道答案plz帮助我..................
sir,
bellow is my code for dynamically creating columns in gridview from data in textbox.but the problem is i can add one column in gridview.
if anyone knows the answer plz help me..................
public void load_dynamic_grid()
{
try
{
DataTable dt = new DataTable();
string name = txtnm.Text;
DataColumn dcol = new DataColumn(name, typeof(System.String));
dt.Columns.Add(dcol);
DataRow drow = dt.NewRow();
drow[name] = "Rows" ;
dt.Rows.Add(drow);
foreach (DataColumn col in dt.Columns)
{
//Declare the bound field and allocate memory for the bound field.
BoundField bfield = new BoundField();
//Initalize the DataField value.
bfield.DataField = col.ColumnName;
//Initialize the HeaderText field value.
bfield.HeaderText = col.ColumnName;
//Add the newly created bound field to the GridView.
gvAlumni.Columns.Add(bfield);
}
//Initialize the DataSource
gvAlumni.DataSource = dt;
//Bind the datatable with the GridView.
gvAlumni.DataBind();
}
catch (Exception ex)
{
throw (ex);
}
}
protected void btnSave_Click(object sender, EventArgs e)
{
load_dynamic_grid();
txtnm.Text = "";
}
推荐答案
为gridview设置AutoGenerateColumns =false。
SET AutoGenerateColumns = "false" for gridview.
使用这个
DataTable dts = new DataTable();
//添加colums
dts.Columns.Add(id,typeof(System.String));
dts.Columns.Add(Property,typeof(System.String));
dts.Columns.Add(Values,typeof(System.String));
dts.Columns.Add(Names,typeof(System.String));
//添加行
DataRow _mk = dts.NewRow();
_mk [id] = 1;
_mk [Property] =xxx;
_mk [Values] =yyy;
_mk [姓名] =zzz;
dts.Rows.Add(_mk);
可能会有帮助
use this
DataTable dts = new DataTable();
//for add colums
dts.Columns.Add("id", typeof(System.String));
dts.Columns.Add("Property", typeof(System.String));
dts.Columns.Add("Values", typeof(System.String));
dts.Columns.Add("Names", typeof(System.String));
//for add rows
DataRow _mk = dts.NewRow();
_mk["id"] = "1";
_mk["Property"] = "xxx";
_mk["Values"] = "yyy";
_mk["Names"] = "zzz";
dts.Rows.Add(_mk);
may b this will help
private DataTable CreateDynamicTable()
{
DataTabl e dt = new DataTable(mytable);
string colCount = TextBox1.Text;
string rowCount = TextBox2.Text;
for (int i = 0;我< Convert.ToInt32(rowCount时); i ++)
{
DataRow dr = dt.NewRow();
dt.Rows.Add(dr);
}
for(int i = 0; i< Convert.ToInt32(colCount); i ++)
{
dt。 Columns.Add(Col+ i,typeof(string));
}
返回dt;
}
将返回的数据表绑定到网格视图
private DataTable CreateDynamicTable()
{
DataTable dt = new DataTable("mytable");
string colCount= TextBox1.Text;
string rowCount = TextBox2.Text;
for (int i = 0; i < Convert.ToInt32(rowCount); i++)
{
DataRow dr = dt.NewRow();
dt.Rows.Add(dr);
}
for (int i = 0; i < Convert.ToInt32(colCount); i++)
{
dt.Columns.Add("Col" + i, typeof(string));
}
return dt;
}
Bind the datatable returned to a grid view
这篇关于如何动态地将多个列添加到Gridview中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文