Tengo el siguiente problema, he conseguido agregar una columna de checkbox a un GridView que se llena con una consulta a una BD, el problema esta en que cuando quiero acceder a las filas que estan seleccionadas, todas retornan con el atributo checked en false, ninguna en true, ni las que estan seleccionadas,
Asi cree el GridView
Código ASP:
Ver original
<asp:GridView ID="gv_trabSeleccionar" runat="server" BackColor="White" BorderColor="#999999" BorderStyle="Solid" BorderWidth="1px" CellPadding="3" ForeColor="Black" GridLines="Vertical" Width="753px"> <AlternatingRowStyle BackColor="#CCCCCC" /> <Columns> <asp:TemplateField AccessibleHeaderText="Seleccionados"> <ItemTemplate> <asp:CheckBox ID="selector" runat="server" /> </ItemTemplate> </asp:TemplateField> </Columns> <FooterStyle BackColor="#CCCCCC" /> <HeaderStyle BackColor="Black" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="#999999" ForeColor="Black" HorizontalAlign="Center" /> <SelectedRowStyle BackColor="#000099" Font-Bold="True" ForeColor="White" /> <SortedAscendingCellStyle BackColor="#F1F1F1" /> <SortedAscendingHeaderStyle BackColor="Gray" /> <SortedDescendingCellStyle BackColor="#CAC9C9" /> <SortedDescendingHeaderStyle BackColor="#383838" /> </asp:GridView>
Y con este codigo trato de acceder a los seleccionados
Código C:
Ver original
protected void Button2_Click(object sender, EventArgs e) { //Declaracion de variables int i = 0; // filas del GV para seleccionar int j = 0; // filas del GV involucrados string valor = string.Empty; CheckBox chk; DataTable tabla = new DataTable(); DataRow tabla_fila; foreach(GridViewRow fila in gv_trabSeleccionar.Rows) { chk = (CheckBox)fila.FindControl("selector"); if (chk.Checked) { tabla_fila = tabla.NewRow(); for (j = 0; j < gv_trabSeleccionar.Columns.Count; j++) { tabla_fila[j] = gv_trabSeleccionar.Rows[i].Cells[j].ToString(); } tabla.Rows.Add(tabla_fila); } } gv_trabInvolucrados.DataSource = tabla; gv_trabInvolucrados.DataBind(); }
Ojala alguien pueda orientarme, se agradece de antemano.
Chauz