C# 隐藏自动生成的gridview列
我需要隐藏在网格视图中自动生成的列。。 有人能给我建议怎么做吗?C# 隐藏自动生成的gridview列,c#,asp.net,gridview,C#,Asp.net,Gridview,我需要隐藏在网格视图中自动生成的列。。 有人能给我建议怎么做吗? **我的代码** public page_load { private void BindGrid() { dt.Columns.Add("ID", typeof(Int16));// here it produce error as Field name ID already exists dt.Columns.Add("FirstName", typeof(string));
**我的代码**
public page_load
{
private void BindGrid()
{
dt.Columns.Add("ID", typeof(Int16));// here it produce error as Field name ID already exists
dt.Columns.Add("FirstName", typeof(string));
dt.Columns.Add("LastName", typeof(string));
dt.Columns.Add("DateOfBirth", typeof(string));
dt.Columns.Add("Occupation", typeof(string));
dt.Columns.Add("Address", typeof(string));
dt.Columns.Add("State", typeof(string));
dt.Columns.Add("PostCode", typeof(string));
dt.Columns.Add("Country", typeof(string));
dt.Columns.Add("Email", typeof(string));
dt.Columns.Add("Mobile", typeof(string));
dt.Columns.Add("CustomerType", typeof(string));
dt.Columns.Add("BusinessName", typeof(string));
CexCustomer.DataBind();
}
}
protected void btn_ShowCust_Click(object sender, EventArgs e)
{
dt.Columns.Add(new DataColumn("ID", typeof(Int16)));
dt.Columns.Add(new DataColumn("FirstName", typeof(string)));
dt.Columns.Add(new DataColumn("LastName", typeof(string)));
dt.Columns.Add(new DataColumn("DateOfBirth", typeof(string)));
dt.Columns.Add(new DataColumn("Occupation", typeof(string)));
dt.Columns.Add(new DataColumn("Address", typeof(string)));
dt.Columns.Add(new DataColumn("State", typeof(string)));
dt.Columns.Add(new DataColumn("PostCode", typeof(string)));
dt.Columns.Add(new DataColumn("Country", typeof(string)));
dt.Columns.Add(new DataColumn("Email", typeof(string)));
dt.Columns.Add(new DataColumn("Mobile", typeof(string)));
dt.Columns.Add(new DataColumn("CustomerType", typeof(string)));
dt.Columns.Add(new DataColumn("BusinessName", typeof(string)));
DataRow dr = dt.NewRow();
int countvalue = myojb.Count;
for (int i = 0; i < countvalue; i++)
{
dt.Rows.Add(
myojb[i].id,
myojb[i].firstName,
myojb[i].lastName,
myojb[i].dob.ToUniversalTime().ToString("dd/MM/yyy"),
myojb[i].occupation,
myojb[i].address,
myojb[i].state,
myojb[i].postCode,
myojb[i].country.ToUpper(),
myojb[i].email,
myojb[i].mobileNumber,
myojb[i].customertype,
myojb[i].businessName
);
}
CexCustomer.Visible = true;
CexCustomer.DataSource = dt;
CexCustomer.Columns[12].Visible = false;//hide business name..
CexCustomer.DataBind();
}
公共页面加载
{
私有void BindGrid()
{
dt.Columns.Add(“ID”,typeof(Int16));//这里它产生错误,因为字段名ID已经存在
添加(“FirstName”,typeof(string));
添加(“LastName”,typeof(string));
添加(“出生日期”,类型(字符串));
添加(“职业”,类型(字符串));
添加(“地址”,类型(字符串));
添加(“状态”,类型(字符串));
添加(“邮政编码”,类型(字符串));
添加(“国家”,类型(字符串));
添加(“电子邮件”,typeof(字符串));
添加(“移动”,typeof(string));
添加(“CustomerType”,typeof(string));
添加(“BusinessName”,typeof(string));
CexCustomer.DataBind();
}
}
受保护的无效btn\u ShowCust\u单击(对象发送方,事件参数e)
{
添加(新的数据列(“ID”,typeof(Int16));
Add(新数据列(“FirstName”,typeof(string));
Add(新数据列(“LastName”,typeof(string));
Add(新的数据列(“出生日期”,typeof(字符串));
添加(新的数据列(“占领”,类型(字符串));
Add(新的数据列(“地址”,typeof(字符串));
Add(新的数据列(“State”,typeof(string));
添加(新的数据列(“邮政编码”,typeof(字符串));
添加(新的数据列(“国家”,类型(字符串));
添加(新的数据列(“电子邮件”,typeof(字符串));
添加(新数据列(“移动”,类型为(字符串));
Add(新的数据列(“CustomerType”,typeof(string));
Add(新数据列(“BusinessName”,typeof(string));
DataRow dr=dt.NewRow();
int countvalue=myojb.Count;
对于(int i=0;i
当运行时我需要隐藏Businessdetails时,任何人都可以建议如何解决此问题。在您的行数据绑定事件中
protected void GridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
e.Row.Cells[12].Visible = false;
}
谢谢你的回答。。
我只是将自动生成的列设置为false,然后按照我的编码过程进行操作..效果很好..指定的参数超出了有效值的范围。参数名称:索引产生了此错误。。