【问题标题】:GridView column widthGridView 列宽
【发布时间】:2010-12-18 17:19:37
【问题描述】:

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

谢谢

【问题讨论】:

    标签: asp.net gridview


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

      问题:

      您的问题源于这样一个事实:当您隐藏数据绑定的 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 访问该值。

      【讨论】:

      • 这对于手头的问题来说是主要的矫枉过正。一个带有隐藏字段的 GridView 模板字段会简单很多。
      猜你喜欢
      • 1970-01-01
      • 2020-11-28
      • 2010-10-07
      • 2017-09-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多