CGU_Rush 0 Denunciar post Postado Julho 27, 2007 Opa galera, estou com um problema. Estou fazendo um gridview pra um cadastro de produtos, dentro do gridview tem um checkbox, quando eu clicar no botao "enviar" eu quero pegar o codigo dos produtos que foram checados. até aí tá beleza, funciona, contanto que esteja aparecendo o campo CODPRODUTO no gridview. o problema é que nao quero que apareça CODPRODUTO no gridview, mas mesmo assim quero pegar o codigo. Alguma idéia? aspx <asp:GridView ID="gridProduto" CssClass="grid" runat="server" AllowPaging="True" AutoGenerateColumns="False" DataKeyNames="codProd" DataSourceID="ObjectDataSource1" PageSize="4"> <Columns> <asp:BoundField DataField="codProd" HeaderText="codProd" ReadOnly="True" SortExpression="codProd" /> <asp:BoundField DataField="nomeProduto" HeaderText="Nome" SortExpression="nomeProduto" /> <asp:TemplateField> <ItemTemplate> <asp:CheckBox ID="chkProdAssociados" runat="server" /> </ItemTemplate> </asp:TemplateField> </Columns> <EmptyDataTemplate> Nenhum produto cadastrado. </EmptyDataTemplate> <PagerStyle CssClass="pager" /> </asp:GridView> aspx.cs protected void btnRemover_Click(object sender, EventArgs e) { StringBuilder sb = new StringBuilder(" * Itens Selecionados * "); foreach (GridViewRow row in gridProduto.Rows) { CheckBox chkAssociado = (CheckBox)row.FindControl("chkProdAssociados"); if ((chkAssociado != null) && (chkAssociado.Checked)) { sb.AppendLine(); sb.Append(row.Cells[0].Text); } } TextBox1.Text = ""; TextBox1.Text = sb.ToString(); }} desde já, obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
CGU_Rush 0 Denunciar post Postado Julho 27, 2007 Ae pessoal, eu consegui fazer o que queria.. eu troquei essa linha: sb.Append(row.Cells[0].Text); por essa: sb.Append(Convert.ToInt32(gridProduto.DataKeys[row.RowIndex].Value)); valeu! Compartilhar este post Link para o post Compartilhar em outros sites