Если столбцы являются частью коллекции DataKeyNames
, вы должны получить их значения из свойства GridView.DataKeys[index].value
, как показано на сайте GridViewGuy .
Если, однако, они не являются частью коллекции DataKeyNames
, то вы можете использовать следующий хак, чтобы убедиться, что значение сохраняется в ViewState (в отличие от нормального поведения для скрытых полей в ASP.NET 2+).
GridView1.DataSource = myDataSource;
// Set the column visibility to true before Databinding
GridView1.Columns[0].Visible = true;
GridView1.Columns[1].Visible = true;
GridView1.DataBind()
// Set the column visibility to false after Databinding
GridView1.Columns[0].Visible = false;
GridView1.Columns[1].Visible = false;