Если вы сделаете if(!IsPostBack) --> gw.DataBind()
, это приведет к повторной инициализации GridView
, и флажки будут снова сняты.
В вашем случае в событии Button1_Click
вы можете циклически проходить через каждый DataRow
на вашем GridView
, найти строку, для которой установлен флажок, и получить все выбранные данные строки.
foreach (GridViewRow gvRow in gw.Rows) {
// Find your checkbox
CheckBox chkBox = (CheckBox)gvRow.FindControl("checkBox");
if (chkBox.Checked) {
// Get your values
string value1 = gvRow.Cells[1].Text;
string value2 = gvRow.Cells[2].Text;
// etc...
}
}