rprado 0 Denunciar post Postado Novembro 24, 2009 Pessoal Tenho um Grid onde com três colunas ID, Descricao e uma template column onde tem um imagembutton que executa um metodo no exento click do mesmo vide codigo abaixo: protected void btnAcao_Click(object sender, ImageClickEventArgs e) { Executar(p1); } Este método Executar tem um parametro e este parametro tem que ser uma determinada coluna da grid da linha clicada. A pergunta é a seguinte: Como pegar a coluna da referente a linha que o usuário clicou ? Grato Compartilhar este post Link para o post Compartilhar em outros sites
Ivan.Teles 23 Denunciar post Postado Novembro 24, 2009 Boa tarde Rprado. Seguinte no seu imagebutton você não seta nenhum evento no click, apenas seta nele o CommandName e o CommandArgument como no exemplo abaixo: CommandName="acao1" CommandArgument='<%# Eval("id") %>'e no evento RowCommand do Gridview, você vai colocar a ação: protected void _grid_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName == "acao1") { int id = int.Parse(e.CommandArgument.ToString()); //id da linha Executar(id) } } Espero ter ajudado! Abraço! Compartilhar este post Link para o post Compartilhar em outros sites
rprado 0 Denunciar post Postado Novembro 25, 2009 Ivan ajudou sim, porém estou usando o DataGrid e o mesmo não possui o evento RowCommand tem alguma alternativa para o controle DataGrid Abraços .. Compartilhar este post Link para o post Compartilhar em outros sites
Ivan.Teles 23 Denunciar post Postado Novembro 25, 2009 È uma plicação desktop? Compartilhar este post Link para o post Compartilhar em outros sites
rprado 0 Denunciar post Postado Novembro 25, 2009 não .. web mesmo <asp:DataGrid ID="DataGrid1" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False" CssClass="lbl" ondeletecommand="GVPedidos_DeleteCommand" onpageindexchanged="GVPedidos_PageIndexChanged" PageSize="20" Width="1027px"> <FooterStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" Wrap="False" /> <EditItemStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" Wrap="False" /> <SelectedItemStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" Wrap="False" /> <PagerStyle BackColor="#BCCDE9" Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" Mode="NumericPages" Wrap="False" /> <AlternatingItemStyle BackColor="White" Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" Wrap="False" /> <ItemStyle BackColor="#E8EEFA" Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" Wrap="False" /> <Columns> <asp:BoundColumn DataField="ID" HeaderText="Ref." ReadOnly="True"> <FooterStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" Wrap="False" /> <HeaderStyle Font-Bold="True" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" HorizontalAlign="Left" Width="10px" Wrap="False" /> <ItemStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" HorizontalAlign="Left" Wrap="False" /> </asp:BoundColumn> <asp:TemplateColumn> <ItemTemplate> <asp:ImageButton ID="btnImprimir" runat="server" ImageUrl="~/images/print.png" AlternateText="Imprimir" /> </ItemTemplate> <HeaderStyle Width="20px" /> <ItemStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" HorizontalAlign="Center" /> </asp:TemplateColumn> <asp:TemplateColumn> <ItemTemplate> <asp:ImageButton ID="btnExcluir" runat="server" CommandName="Delete" ImageUrl="~/images/pres2.gif" AlternateText="Excluir" /> </ItemTemplate> <HeaderStyle Width="20px" /> <ItemStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" HorizontalAlign="Center" /> </asp:TemplateColumn> <asp:TemplateColumn> <ItemTemplate> <asp:ImageButton ID="btnRastrear" runat="server" ImageUrl="~/images/search.gif" AlternateText="Rastrear" Height="16px" Width="18px" /> </ItemTemplate> <HeaderStyle Width="20px" /> <ItemStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" HorizontalAlign="Center" /> </asp:TemplateColumn> </Columns> <HeaderStyle BackColor="#BCCDE9" Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" Wrap="False" /> </asp:DataGrid> Compartilhar este post Link para o post Compartilhar em outros sites
Ivan.Teles 23 Denunciar post Postado Novembro 25, 2009 Então ele tem a propriedade cara, na Tab de Propriedades -> Eventos OnRowCommand Compartilhar este post Link para o post Compartilhar em outros sites
rprado 0 Denunciar post Postado Novembro 25, 2009 Hum .. não tem esse evento nesse componente mesmo !!! Apenas estes estão disponíveis System.Web.UI.Web.Controls.DataGrid CancelCommand DataBinding DeleteCommand Disposed EditCommand Init Itemcommand ItemCreated ItemDataBound Load PageIndexChanged PreRender SelectedIndexChanged SortCommand Unload UpdateCommand Grato pela atenção!!! Compartilhar este post Link para o post Compartilhar em outros sites
Ivan.Teles 23 Denunciar post Postado Novembro 25, 2009 Deve funcionar no ItemCommand http://msdn.microsoft.com/pt-br/library/system.web.ui.webcontrols.datagrid.itemcommand(VS.80).aspx Compartilhar este post Link para o post Compartilhar em outros sites
rprado 0 Denunciar post Postado Novembro 26, 2009 é esse evento mesmo cara ... tentei com ele ontem protected void DataGrid1_ItemCommand(object source, DataGridCommandEventArgs e) { Metodo(e.Item.Cells[0].Text.ToString()); } Obrigado !!! Compartilhar este post Link para o post Compartilhar em outros sites