07/04/2008, 14:59
|
| | Fecha de Ingreso: noviembre-2007 Ubicación: Trabajo en INEGI
Mensajes: 33
Antigüedad: 17 años, 1 mes Puntos: 0 | |
Re: Obtener el Id de un boton o caja de texto dentro de un gridview ok espero te pueda servir o dar una idea este codigo
en el html tengo la siguiente definicion del grid
<asp:datagrid id="MiGrid" runat="server" AllowPaging="True" ShowHeader="False" GridLines="None"
Width="100%" CellPadding="2" AutoGenerateColumns="False">
<EditItemStyle CssClass="txt_azul_b" BackColor="#FFAD1F"></EditItemStyle>
<AlternatingItemStyle CssClass="txt_negro" BackColor="#E7EEF5"></AlternatingItemStyle>
<ItemStyle CssClass="txt_negro" BackColor="White"></ItemStyle>
<Columns>
<asp:TemplateColumn>
<ItemStyle Width="1%"></ItemStyle>
<ItemTemplate>
<asp:Label id=lblClave runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Clave") %>' Visible="False">
</asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<ItemStyle Width="90%"></ItemStyle>
<ItemTemplate>
<asp:Label id=lblDescripcion runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Descripcion") %>'>
</asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox id=txtDescricion runat="server" Width="99%" Text='<%# DataBinder.Eval(Container, "DataItem.Descripcion") %>'>
</asp:TextBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<ItemStyle Width="4%"></ItemStyle>
<ItemTemplate>
<asp:Button id="btnElimina" runat="server" Text="Elimina" CausesValidation="false" CommandName="Delete"></asp:Button>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<ItemStyle Width="5%"></ItemStyle>
<ItemTemplate>
<asp:Button id="btnActualiza" runat="server" Text="Actualiza" CausesValidation="false" CommandName="Edit"></asp:Button>
</ItemTemplate>
<EditItemTemplate>
<asp:Button id="btnConfirma" runat="server" Text="Confirma" CommandName="Update"></asp:Button>
</EditItemTemplate>
</asp:TemplateColumn>
</Columns>
<PagerStyle VerticalAlign="Bottom" Height="34px" Font-Size="10pt" Font-Names="Helvetica" Font-Bold="True"
HorizontalAlign="Center" Mode="NumericPages"></PagerStyle>
</asp:datagrid>
en el codigo de C#
aqui se carga el grid y asociamos un evento para que la ejecute el cliente
private void MiGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem)) {
Button btn = (Button)(e.Item.Cells[2].FindControl("btnElimina"));
btn.Attributes.Add("onclick","return confirm(' Confirme que desea borrar el registro ');");
}
}
private void MiGrid_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
this.MiGrid.EditItemIndex = (int)e.Item.ItemIndex;
Carga();
}
se ejecuta el evento delete del lado del servidor
private void MiGrid_DeleteCommand(object source,
System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
Label lbl = (Label)(e.Item.FindControl("lblClave"));
Button b = (System.Web.UI.WebControls.Button)(e.Item.FindCont rol("btnElimina"));
string id = b.id;
} |