none
Insertar un combobox en un propertygrid RRS feed

  • Pregunta

  • Hola he tenido que utilizar el propertygrid y requiero que mi propertigrid tenga un combobox que se llena con datos traidos de mi BD. ejemplo yo extraigo datos de la tabla arquitecturas y mi combo se llena con mi objeto Arquitecturas, el cual tiene (Id, Descripcion, entre otras), el combo en el combo debe estar visible solo la descripcion, para que cuando seleccione recuperar el Id.

    acontinuacion dejo mi codigo de la forma que la estoy realizando, pero este ejemplo lo encontre para cargar un combo con una enumeracion, en el momento se carga pero me muestra es el namespace de mi objeto Arquitecturas.

    hay entrego el codigo

    public class CargarCombox : StringConverter 
     {
      AdministrationServicesClient cliente = new AdministrationServicesClient();
      List<Arquitectura> Lst = new List<Arquitectura>();
    
      public CargarCombox()
      {
       Lst = cliente.ObtenerArquitecturas();
      }
    
      public override bool GetStandardValuesSupported(ITypeDescriptorContext context)
      {
       return true;   
      }
    
      public override TypeConverter.StandardValuesCollection GetStandardValues(ITypeDescriptorContext context)
      {
       return new System.ComponentModel.TypeConverter.StandardValuesCollection(Lst);   
      }
    
      public override bool GetStandardValuesExclusive(ITypeDescriptorContext context)
      {
       return true;
      }
     }

    aqui mi propiedad que se vera en el propertigrid

    private MantizOnline40.Entities.Arquitectura arqu;
    
      [CategoryAttribute("General")]
      [Description("Descripcion del proceso")]
      [DisplayName("Arquitectura")]
      [TypeConverter (typeof (MantizOnline40.Presentation.ViewModels.Productos.CargarCombox) ) ] 
      
      public MantizOnline40.Entities.Arquitectura IdArquitectura
      {
       get { return arqu; }
       set { arqu = value; }   
      }

    como decian antes mi combo se llena con el namespace en este caso es MantizOnline40.Entities.Arquitectura.

    por favor requiero de su ayuda, si este metodo que estoy utilizando sirve y que me hace falta, o si por el contrario se debe hacer de otro forma. 

    miércoles, 17 de noviembre de 2010 20:27

Respuestas

  • Lo único que se me ocurre es que en lugar de retornar Lst como tal, primero lo conviertas a un string[] es lo único que veo diferente a lo que yo tengo funcionando.

     

    Cordial saludo,

     


    Mauricio Atanache G. - MCP
    Bogotá - Colombia
    "Bienaventurados los Pesimistas. Por que hacen BACKUPS."
    • Marcado como respuesta Wipito jueves, 13 de enero de 2011 0:50
    sábado, 20 de noviembre de 2010 0:02