martes, 1 de enero de 2013

3 Formas sencillas de crear una Caja Autocompletar

A continuación voy a enumerar unas formas sencillas (sin código  de como crear control del tipo Cuadro Autocompletar (Auto Complete Box). Existen tres formas:

1.- Mediante una clave externa.
Creamos una tabla donde indicamos un campo que es clave externa de otra tabla:



Al agregar el campo Pais de la tabla Cliente en una pantalla, LightSwitch automáticamente nos creará un control Autocompletar:


2.- Con una variable local o un campo de lista de opciones.
La otra manera de utilizar una cuadro de Autocompletar es definir una variable local o un campo con una lista de opciones.
  • Creamos una variable local llamada Mes

  • En la propiedad de la variable local hacemos clic en la lista de opciones

  • Llenamos la lista con los datos, en mi ejemplo, los meses del año

  • Automáticamente Microsoft LightSwitch hace que mi variable Mes sea de tipo Cuadro Autocompletar


También puede hacer esto en el diseño de la entidad o tabla proporcionando una lista de opciones para cualquier campo.

3.- La siguiente manera es muy útil y muchas veces no se utiliza porque hay que recordar que al crear una variable en la pantalla, ademas de los tipo comunes (Integer, String, etc.. ) también podemos crear variables que usan tablas.
  • Agregamos un elemento de datos y seleccionamos "Propiedad local" y desde la lista desplegable, seleccionamos una tabla (Entity). En mi ejemplo, elegir una clasificación para el cliente.

  • El nombre de la variable local es miPropiedad y su tipo es la tabla Clasificacion

  • Automáticamente Microsoft LighSwitch crea una Caja Autocompletar para mi variable local al agregarla en la pantalla

Espero os haya sido útil estas aclaraciones para crear este tipo de control.

1 comentario:

  1. Añadiendo la Variable Local a mi Screen en Lightswitch lo que puse fue como Items:

    "Programar" y "Cancelar"... Quisiera que cuando se le de al btnGuardar si la opcion es Programar saque un mensaje, lo hice así pero parece como si ese campo no se guardara o no se afectara:

    switch (gestionItem.TipoGestion) {
    case "Programar":
    //Accion
    break;
    }

    Le asigné por codigo que el valor que seleccionaran se guardará en el campo de la bd asi:

    this.TipoGestionCN = this.Gestiones.SelectedItem.TipoGestion;

    Pero mira el error que sale:
    http://i.imgur.com/qVCdyQp.gif

    ResponderEliminar