![]() |
Como encadenar DropDownList
Como esncadenar dos DropDownList de manera tal que al seleccionar en el primero solamante se muestren determinados items en el segundo.
Selman. |
Hola,
No explicas mucho, pero, a ver si esto puede darte una idea. Vamos, al menos, de como yo haría algo que me imagino parecido a lo que precisas... Inicia una nueva aplicación en Delphi y en el formulario sitúa dos "ComboBox". En el siguiente código se emplean los eventos "FormCreate" del formulario y "OnChange" del primero de los "ComboBox".
Resumiendo: se llena con los elementos correspondientes el primero de los "ComboBox", se selecciona el primero de estos y se dispara el evento "OnChange". En dicho evento (del primer "ComboBox") se mira por el índice del elemento seleccionado en el "ComboBox", de tal manera que si este es 0, inicializamos y llenamos el segundo "ComboBox" con números pares. Si el índice es el 1 asignamos al segundo "ComboBox" números impares. |
algo asi:
Al menos la idea no creo que cambie para punto net, quizas los eventos. Hasta luego. ;) |
Para .NET, David, para .NET... a ver si leemos más despacio... yo no sé entonces si el código de más arriba podrá valer o no... desconozco hasta qué punto Delphi para .NET es "igual" que Delphi para Win32.
|
Ok, gracias por la respuesta, pero como le cargo el Value al item, con el método Add cargo el Text del item pero me falta asignarle su Value.
Selman. |
hablas de asp.net, o de una aplicacion win32?
|
De asp.net
Selman |
ponle el autopostback del primero a true, y programa el evento SelectedIndexChanged del dropdownlist para capturar el valor que se ha cambiado, y refrescar el otro dropdrownlist.
Igual, nos muestras algo de codigo de lo que quieres hacer ? |
Estoy trabando con Delphi 2005, desarrollando una aplicación en asp.net. En tiempo de diseño el objeto dropdownlist en su ListItem Collection de cada item tiene tres propiedades
-Selected -Text -Value Con los comentarios de códigos anteriores que me han proporcionado ustedes puedo cargarle en tiempo de ejecución los Text del dropdownlist con el metodo Add, pero me falta como pasarle las otras dos propiedades, Selected y Value |
el metodo Add del dropdownlist, acepta como parametro un objeto del tipo ListItem, que a su vez en su constructor acepta los valores de text y value que mencionas. Es mas o menos asi (si la memoria no me falla):
DropDownList1.Items.Add(New ListItem("texto", "valor")); Si quieres seleccionar un item en especifico: DropDownList1.SelectedIndex = indice; Te sirve? |
Gracias Hector, ya quedó con este codigo.
procedure TWebForm1.AgregaLista (text : string; valor : string); var Item : ListItem; begin Item := ListItem.Create; Item.Text := text; Item.Value := valor; forma_pago.Items.Add(Item); Item.Free; end; procedure TWebForm1.tipo_cliente_SelectedIndexChanged(sender: System.Object; e: System.EventArgs); begin forma_pago.Items.Clear; case tipo_cliente.SelectedIndex of 0: begin AgregaLista ('50 % anticipo y 50 % a la entrega', '1'); AgregaLista ('100 % de anticipo', '2'); AgregaLista ('Tarjeta American Express 50/50', '30'); AgregaLista ('Tarjeta American Express 100 %', '31'); AgregaLista ('Tarjeta American Express 50/50 a 6 meses', '32'); AgregaLista ('Tarjeta American Express 100 % a 6 meses', '33'); AgregaLista ('Tarjeta American Express 50/50 a 9 meses', '34'); AgregaLista ('Tarjeta American Express 100 % a 9 meses', '35'); end; 1,2,3,4,5,6: begin AgregaLista ('50 % anticipo y 50 % a la entrega', '1'); end; end; end; |
La franja horaria es GMT +2. Ahora son las 10:16:21. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi