21/06/2007, 10:18
|
| | Fecha de Ingreso: mayo-2004 Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 20 años, 7 meses Puntos: 6 | |
Re: C# 2.0 - Conocer el INDEX de la ROW de un GridView. Utilizando el evento GridView1_SelectedIndexChanging
Código:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="4"
Font-Names="Verdana" Font-Size="10pt" ForeColor="#333333" GridLines="None" OnSelectedIndexChanging="GridView1_SelectedIndexChanging">
<FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("IdUsuario") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Nombre" HeaderText="Nombre del usuario" />
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" CommandArgument='<%# Bind("IdUsuario") %>'
CommandName="Select" Text="Select"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
<EditRowStyle BackColor="#999999" />
<SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
</asp:GridView>
Codigo C#
Código:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//Carga de datos..
//Simulando que cargo los datos aqui
DataTable table = new DataTable("Usuarios");
table.Columns.Add(new DataColumn("IdUsuario", typeof(System.Int32)));
table.Columns.Add(new DataColumn("Nombre", typeof(System.String)));
DataRow dr = table.NewRow();
dr["IdUsuario"] = 1;
dr["Nombre"] = "Stream 1";
table.Rows.Add(dr);
dr = table.NewRow();
dr["IdUsuario"] = 5;
dr["Nombre"] = "Stream 5";
table.Rows.Add(dr);
dr = table.NewRow();
dr["IdUsuario"] = 10;
dr["Nombre"] = "Stream 10";
table.Rows.Add(dr);
GridView1.DataSource = table;
GridView1.DataBind();
}
}
protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
GridViewRow dr = this.GridView1.Rows[e.NewSelectedIndex];
LinkButton LinkButton1 = (LinkButton)dr.Cells[2].FindControl("LinkButton1");
int IdUsuario = Convert.ToInt32(LinkButton1.CommandArgument);
//carga datos del usuario con el IdUsuario
}
Salu2 |