GridView列宽

时间:2010-12-18 17:19:37

标签: asp.net gridview

我正在使用VS 2010.我有一个包含很少模板列的GridView。我希望第二列根本不可见,但仍然存在,所以javascript将能够看到它的价值。 有人知道如何设置这个宽度值吗?

由于

2 个答案:

答案 0 :(得分:2)

在第一列中放置一个隐藏字段,并将您需要的值放入其中的第二列,而不是创建第二列。

答案 1 :(得分:1)

问题:

您的问题源于这样一个事实:当您隐藏数据绑定的GridView列时,其有界值不再可用,如果您尝试访问它,您将获得一个空字符串。

解决方案:

在gridview中启用2个事件:

RowDataBound:在这种情况下,您可以访问隐藏的单元格值(在隐藏它之前)

protected void MyGridView_RowDataBound(Object sender, GridViewRowEventArgs)
{
   // Here you store the value
   this.sID = e.Row.Cells[1].Text;
}

RowCreated:在这种情况下,您隐藏了单元格,将其写入事件处理程序:

protected void MyGridView_RowCreated(Object sender, GridViewRowEventArgs)
{
    // then you hide the cell (Only the cell not the column)
    e.Row.Cells[1].Visible = false;
}

在这些代码中,在我们在另一个变量/数组中保存所需的值之后,我们可以轻松地隐藏单元格。您可以将该值放在隐藏的输入中,以便从javascript中访问该值。