
.net:创建DataTable,gridview以它为数据源,想隐藏一列或输出值都行,弄不出来。报错索引超出范围
protectedvoidPage_Load(objectsender,EventArgse){this.GridView1.DataSource=bind();this...
protected void Page_Load(object sender, EventArgs e)
{
this.GridView1.DataSource =bind() ;
this.GridView1.DataBind();
}
public DataTable bind()
{
DataTable dt = new DataTable();
dt.Columns.Add("a", typeof(int));
dt.Columns.Add("b", typeof(int));
DataRow dr = dt.NewRow();
dr["a"] = 1;
dr["b"] = 1;
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["a"] =2;
dr["b"] = 2;
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["a"] = 3;
dr["b"] = 3;
dt.Rows.Add(dr);
return dt;
}
protected void Button1_Click(object sender, EventArgs e)
{
this.GridView1.Columns[0].Visible=false;//不能实现
//Response.Write(GridView1.Columns[0].ToString());不能实现
}
}
我是想用DataTable来实现啊 展开
{
this.GridView1.DataSource =bind() ;
this.GridView1.DataBind();
}
public DataTable bind()
{
DataTable dt = new DataTable();
dt.Columns.Add("a", typeof(int));
dt.Columns.Add("b", typeof(int));
DataRow dr = dt.NewRow();
dr["a"] = 1;
dr["b"] = 1;
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["a"] =2;
dr["b"] = 2;
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["a"] = 3;
dr["b"] = 3;
dt.Rows.Add(dr);
return dt;
}
protected void Button1_Click(object sender, EventArgs e)
{
this.GridView1.Columns[0].Visible=false;//不能实现
//Response.Write(GridView1.Columns[0].ToString());不能实现
}
}
我是想用DataTable来实现啊 展开
1个回答
展开全部
如果你这是 做一个gridview的实验的话.
你可以用DataSet做数据源的,那么
this.GridView1.Columns[0].Visible=false;//这句话就可以实现了
补充,用DataTable也可以实现,不过麻烦点
方法:
在this.GridView1.DataSource =bind() ;
this.GridView1.DataBind();
后面写
for(int i=0;i<GridView1.Rows.Count;i++)
{
TableCell tc=GridView1.Rows[i].Cells[0]; //定义第一列
tc.Visible=false; //隐藏所有行中的第一列数据
}
你可以用DataSet做数据源的,那么
this.GridView1.Columns[0].Visible=false;//这句话就可以实现了
补充,用DataTable也可以实现,不过麻烦点
方法:
在this.GridView1.DataSource =bind() ;
this.GridView1.DataBind();
后面写
for(int i=0;i<GridView1.Rows.Count;i++)
{
TableCell tc=GridView1.Rows[i].Cells[0]; //定义第一列
tc.Visible=false; //隐藏所有行中的第一列数据
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询