Foros del Web » Programando para Internet » ASPX (.net) »

Dropdownlist dentro de Gridview no devuelve Item correcto

Estas en el tema de Dropdownlist dentro de Gridview no devuelve Item correcto en el foro de ASPX (.net) en Foros del Web. Hola foreros, es mi primer post, tengo un problema con un Dropdownlist dentro de un Gridview. Escribi codigo en C# para que al seleccionar uno ...
  #1 (permalink)  
Antiguo 11/06/2012, 15:47
 
Fecha de Ingreso: junio-2012
Mensajes: 5
Antigüedad: 11 años, 10 meses
Puntos: 0
Dropdownlist dentro de Gridview no devuelve Item correcto

Hola foreros, es mi primer post, tengo un problema con un Dropdownlist dentro de un Gridview.
Escribi codigo en C# para que al seleccionar uno de los elementos del dropdownlist, me guarde en una variable el Item.
Este es el codigo C#:

public void ddlTipo_SelectedIndexChanged(object sender, EventArgs e)
{
WC.DropDownList ddl = (WC.DropDownList)sender;
String Tipo = ddl.SelectedItem.ToString();
}

-Y este es el codigo Aspx:

<asp:ScriptManager id="ScriptManager1" runat="server">
</asp:ScriptManager>

<asp:GridView ID="GridView1" runat="server" OnLoad="Grid_Load" EnableViewState="false" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField HeaderText=" Sel ">
<ItemTemplate><asp:CheckBox ID="chkSel" runat="server"/></ItemTemplate>
</asp:TemplateField>
<asp:BoundField HeaderText="Nombre" DataField="_text1" HeaderStyle-Width="400px"/>
<asp:TemplateField HeaderText="Tipo (Sel)" HeaderStyle-Width="120px">
<ItemTemplate>
<asp:UpdatePanel ID="update" runat="server" UpdateMode="Always">
<ContentTemplate>
<asp:DropDownList ID="ddlTipo" EnableViewState="false" AutoPostBack="true" OnSelectedIndexChanged="ddlTipo_SelectedIndexChang ed" Width="120px" runat="server" >
</asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>

</ItemTemplate>
</asp:TemplateField>
<asp:BoundField HeaderText="Numero" DataField="_int1" HeaderStyle-Width="200px"/>
</Columns>
</asp:GridView>


-El problema esque cuando cambio un elemento del droplist y despues vuelvo a seleccionar el primer elemento, no me devuelve ningún valor.

Si alguien sabe como que me acepte el primer valor de la lista, les agradesco.
  #2 (permalink)  
Antiguo 12/06/2012, 07:30
Avatar de lucord  
Fecha de Ingreso: marzo-2010
Ubicación: San Jose, Costa Rica
Mensajes: 87
Antigüedad: 14 años, 1 mes
Puntos: 10
Respuesta: Dropdownlist dentro de Gridview no devuelve Item correcto

Incluye todo el gridview dentro del Update Panel.

<asp:UpdatePanel ID="update" runat="server" UpdateMode="Always">
<ContentTemplate>
<asp:GridView ID="GridView1" runat="server" OnLoad="Grid_Load" EnableViewState="false" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField HeaderText=" Sel ">
<ItemTemplate><asp:CheckBox ID="chkSel" runat="server"/></ItemTemplate>
</asp:TemplateField>
<asp:BoundField HeaderText="Nombre" DataField="_text1" HeaderStyle-Width="400px"/>
<asp:TemplateField HeaderText="Tipo (Sel)" HeaderStyle-Width="120px">
<ItemTemplate>

<asp:DropDownList ID="ddlTipo" EnableViewState="false" AutoPostBack="true" OnSelectedIndexChanged="ddlTipo_SelectedIndexChang ed" Width="120px" runat="server" >
</asp:DropDownList>

</ItemTemplate>
</asp:TemplateField>
<asp:BoundField HeaderText="Numero" DataField="_int1" HeaderStyle-Width="200px"/>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
  #3 (permalink)  
Antiguo 12/06/2012, 15:16
 
Fecha de Ingreso: junio-2012
Mensajes: 5
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Dropdownlist dentro de Gridview no devuelve Item correcto

Lo hice como asi como dices, pero sigue igual...
Alguna otra sugerencia?
  #4 (permalink)  
Antiguo 13/06/2012, 09:59
Avatar de AWesker  
Fecha de Ingreso: octubre-2008
Mensajes: 177
Antigüedad: 15 años, 6 meses
Puntos: 27
Respuesta: Dropdownlist dentro de Gridview no devuelve Item correcto

Dentro del evento SelectedIndexChanged que creaste en el DropDownList intenta con esto:

Código ASP:
Ver original
  1. //Aquí tomamos la fila a partir del sender y obtenemos el contenedor
  2. GridViewRow Fila = ((GridViewRow)((DropDownList)sender).NamingContainer);
  3.  
  4. //Aquí buscamos el control a partir del GridViewRow recién obtenido
  5. DropDownList Ddl_Tipo = (DropDownList)Fila.FindControl("ddlTipo");
  6.  
  7. //Ahora podemos usarlo para lo que querramos
  8. Lbl_Mensaje.Text = Ddl_Tipo.SelectedItem.ToString();

Probalo y nos avisas.

Saludos...
  #5 (permalink)  
Antiguo 18/06/2012, 15:07
Avatar de cgonzalezm  
Fecha de Ingreso: junio-2012
Mensajes: 55
Antigüedad: 11 años, 10 meses
Puntos: 13
Respuesta: Dropdownlist dentro de Gridview no devuelve Item correcto

Recuerdo que una vez me pasó exactante lo mismo que a ti.

Lo que debes hacer es eliminar el dropdownlist que creaste (y todos sus eventos asociados).

Luego debes crear uno nuevo con otro nombre.

Etiquetas: gridview
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:48.