Foros del Web » Programación para mayores de 30 ;) » .NET »

Habilitar elementos de rejilla segun seleccion del dropdownlist

Estas en el tema de Habilitar elementos de rejilla segun seleccion del dropdownlist en el foro de .NET en Foros del Web. Buenos días Me gustaría saber si por favor me pueden ayudar con el siguiente problema. Tengo un gridview con 3 dropdownlist en cada fila (incluyendo ...
  #1 (permalink)  
Antiguo 30/04/2013, 06:45
 
Fecha de Ingreso: abril-2013
Mensajes: 1
Antigüedad: 11 años, 6 meses
Puntos: 0
Pregunta Habilitar elementos de rejilla segun seleccion del dropdownlist

Buenos días
Me gustaría saber si por favor me pueden ayudar con el siguiente problema.
Tengo un gridview con 3 dropdownlist en cada fila (incluyendo el pie) y quiero q si elijo en el primer dropdownlist el elemento "PAIS" me habilite el dropdownlist PAISES y me inhabilite el de AGRUPACIONES y viceversa. Esto se podrá hacer tanto en el pie como al editar una fila cualquiera.
Aquí dejo el código. Muchas gracias y un saludo.

<div id="REJILLA">
<asp:GridView ID="REJILLA_INFORMACION" AllowPaging="true" AllowSorting="true" AutoGenerateColumns="false" DataKeyNames="idInformacion" DataSourceID="DATOS_SQL_REJILLA_INFORMACION" GridLines="None" PageSize="10" runat="server" ShowFooter="true" Width="100%">
<asp:TemplateField HeaderText="PAIS /<br />AGRUPACION">
<ItemTemplate></ItemTemplate>
<EditItemTemplate>
<asp:DropDownList ID="COMBO_PAIS_AGRUPACION" CssClass="COMBO" runat="server">
<asp:ListItem Value="P">PAIS</asp:ListItem>
<asp:ListItem Value="A">AGRUPACION</asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
<FooterTemplate>
<asp:DropDownList ID="COMBO_PAIS_AGRUPACION" CssClass="COMBO" runat="server"

AutoPostBack="true" OnSelectedIndexChanged="COMBO_PAIS_AGRUPACION_SELE CTEDINDEXCHANGED">

<asp:ListItem Value="P">PAIS</asp:ListItem>
<asp:ListItem Value="A">AGRUPACION</asp:ListItem>
</asp:DropDownList>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="PAIS" SortExpression="pais">
<ItemTemplate><asp:Label ID="ETIQUETA_PAIS" runat="server" Text='<%# Eval("pais") %>' Visible='<%# NOT Eval("pais") IS DBNULL.VALUE %>'></asp:Label></ItemTemplate>
<EditItemTemplate><asp:DropDownList ID="COMBO_PAISES" CssClass="COMBO" DataSourceID="DATOS_SQL_COMBO_PAISES" DataTextField="pais" DataValueField="idPais" runat="server"></asp:DropDownList></EditItemTemplate>
<FooterTemplate>
<asp:DropDownList ID="COMBO_PAISES" AppendDataBoundItems="true" CssClass="COMBO" DataSourceID="DATOS_SQL_COMBO_PAISES" DataTextField="pais" DataValueField="idPais" runat="server">
<asp:ListItem Value="-">-----------</asp:ListItem>
</asp:DropDownList>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="AGRUPACION<br />DE PAISES" SortExpression="agrupacionPaises">
<ItemTemplate><asp:Label ID="ETIQUETA_AGRUPACION_PAIS" runat="server" Text='<%# Eval("agrupacionPaises") %>' Visible='<%# NOT Eval("agrupacionPaises") IS DBNULL.VALUE %>'></asp:Label></ItemTemplate>
<EditItemTemplate><asp:DropDownList ID="COMBO_AGRUPACIONES_PAISES" CssClass="COMBO" DataSourceID="DATOS_SQL_COMBO_AGRUPACIONES_PAISES" DataTextField="agrupacionPaises" DataValueField="idAgrupacionPaises" runat="server"></asp:DropDownList></EditItemTemplate>
<FooterTemplate>
<asp:DropDownList ID="COMBO_AGRUPACIONES_PAISES" AppendDataBoundItems="true" CssClass="COMBO" DataSourceID="DATOS_SQL_COMBO_AGRUPACIONES_PAISES" DataTextField="agrupacionPaises" DataValueField="idAgrupacionPaises" runat="server">
<asp:ListItem Value="-">-----------</asp:ListItem>
</asp:DropDownList>
</FooterTemplate>
</asp:TemplateField>

<asp:TemplateField>
<ItemTemplate>
<asp:ImageButton ID="BOTON_IMAGEN_MODIFICAR_REGISTRO" CssClass="IMAGEN_BOTON_PEQUEÑA" ImageUrl="~/IMAGENES/MODIFICAR.gif" OnClick="BOTON_IMAGEN_MODIFICAR_REGISTRO_CLICK" runat="server" />
<asp:ImageButton ID="BOTON_IMAGEN_ELIMINAR_REGISTRO" CssClass="IMAGEN_BOTON_PEQUEÑA" ImageUrl="~/IMAGENES/ELIMINAR.gif" OnClick="BOTON_IMAGEN_ELIMINAR_REGISTRO_CLIC" runat="server"/>
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="BOTON_IMAGEN_ACEPTAR_REGISTRO" CssClass="IMAGEN_BOTON_PEQUEÑA" ImageUrl="~/IMAGENES/ACEPTAR.gif" OnClick="BOTON_IMAGEN_ACEPTAR_REGISTRO_CLICK" runat="server" />
<asp:ImageButton ID="BOTON_IMAGEN_CANCELAR_REGISTRO" CssClass="IMAGEN_BOTON_PEQUEÑA" ImageUrl="~/IMAGENES/CANCELAR.gif" OnClick="BOTON_IMAGEN_CANCELAR_REGISTRO_CLICK" runat="server" />
</EditItemTemplate>
<FooterTemplate><asp:ImageButton ID="BOTON_IMAGEN_INSERTAR_REGISTRO" CssClass="IMAGEN_BOTON_PEQUEÑA" ImageUrl="~/IMAGENES/INSERTAR.gif" OnClick="BOTON_IMAGEN_INSERTAR_REGISTRO_CLICK" runat="server"/></FooterTemplate>
</asp:TemplateField>

</Columns>
</asp:GridView>
</div>


Protected Sub REJILLA_INFORMACION_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles REJILLA_INFORMACION.PreRender
fila_rejilla = REJILLA_INFORMACION.FooterRow
ACTIVAR_OBJETOS_DE_FORMATOS_DE_INFORMACION(fila_re jilla)
ACTIVAR_OBJETOS_DE_PAISES_AGRUPACIONES(fila_rejill a)
End Sub

Sub ACTIVAR_OBJETOS_DE_PAISES_AGRUPACIONES(ByVal fila_rejilla As GridViewRow)
COMBO_PAIS_AGRUPACION = fila_rejilla.FindControl("COMBO_PAIS_AGRUPACION")
COMBO_PAISES = fila_rejilla.FindControl("COMBO_PAISES")
COMBO_AGRUPACIONES_PAISES = fila_rejilla.FindControl("COMBO_AGRUPACIONES_PAISE S")
If COMBO_PAIS_AGRUPACION.SelectedValue = "P" Then
COMBO_PAISES.Enabled = True
COMBO_AGRUPACIONES_PAISES.Enabled = False
End If
If COMBO_PAIS_AGRUPACION.SelectedValue = "A" Then
COMBO_PAISES.Enabled = False
COMBO_AGRUPACIONES_PAISES.Enabled = True
End If
End Sub


Sub BOTON_IMAGEN_MODIFICAR_REGISTRO_CLICK(ByVal sender As Object, ByVal e As ImageClickEventArgs)
OBTENER_NUMERO_DE_FILA_DE_REJILLA(sender, fila)
fila_rejilla = REJILLA_INFORMACION.Rows(fila)

OBTENER_DATO_DEL_CONTENEDOR(fila_rejilla, "ETIQUETA_PAIS", pais)
OBTENER_DATO_DEL_CONTENEDOR(fila_rejilla, "ETIQUETA_AGRUPACION_PAIS", agrupacion_paises)
OBTENER_DATO_DEL_CONTENEDOR(fila_rejilla, "ETIQUETA_TIPO_INFORMACION", tipo_informacion)
REJILLA_INFORMACION.EditIndex = fila
REJILLA_INFORMACION.DataBind()
fila_rejilla = REJILLA_INFORMACION.Rows(fila)

If pais = "" Then
ACTUALIZAR_COMBO_DE_REJILLA(COMBO_PAIS_AGRUPACION, "AGRUPACION")
Else
ACTUALIZAR_COMBO_DE_REJILLA(COMBO_PAIS_AGRUPACION, "PAIS")
End If
COMBO_PAIS_AGRUPACION.Items.RemoveAt(0)
COMBO_PAISES = fila_rejilla.FindControl("COMBO_PAISES")
ACTUALIZAR_COMBO_DE_REJILLA(COMBO_PAISES, pais)
COMBO_AGRUPACIONES_PAISES = fila_rejilla.FindControl("COMBO_AGRUPACIONES_PAISE S")
ACTUALIZAR_COMBO_DE_REJILLA(COMBO_AGRUPACIONES_PAI SES, agrupacion_paises)

ACTIVAR_OBJETOS_DE_PAISES_AGRUPACIONES(fila_rejill a)
End Sub

Sub COMBO_PAIS_AGRUPACION_SELECTEDINDEXCHANGED(ByVal sender As Object, ByVal e As EventArgs)

OBTENER_NUMERO_DE_FILA_DE_REJILLA(sender, fila)
If fila >= 0 Then
fila_rejilla = REJILLA_INFORMACION.Rows(fila)

Else
fila_rejilla = REJILLA_INFORMACION.FooterRow
End If

ACTIVAR_OBJETOS_DE_PAISES_AGRUPACIONES(fila_rejill a)

End Sub

Etiquetas: visual
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 13:48.