【发布时间】:2014-07-26 13:14:51
【问题描述】:
隐藏列的方法有很多种,但如何在 GridView 中隐藏其中一种方法,并对该列中的值进行静态访问?
【问题讨论】:
隐藏列的方法有很多种,但如何在 GridView 中隐藏其中一种方法,并对该列中的值进行静态访问?
【问题讨论】:
数据绑定后,将 Column 的 Visible 属性设置为 false。
最好的方法包括 3 个步骤。 1. 在 Grid 定义中指定 DataKeyName。 2. 在列定义中将 Visible 设置为 false - 这将阻止向浏览器发送值。 3. 使用 Grid 视图的 SelectedIndexChanging 事件。由于该事件被触发很长时间,因此 PageUnload 列中的数据仍然可以访问。您可以将该值存储在 ViewState、Session 中,或者只是将其传递给另一个方法。
protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
if (e.NewSelectedIndex != -1)
{
ViewState.Add("myKeyValue", GridView1.DataKeys[e.NewSelectedIndex].Value);
}
【讨论】: