Ir al contenido principal

ComboBoxMultiColumns–Update 1

image
Actualizaciones
  • DataSource: Soporta los siguientes origenes de datos: DataTable e IList
  • El alto de la lista desplegable se calcula automaticamente según la propiedad DropDownRows y el ancho se calcular en base a la cantidad de columnas a mostrar considerando la propiedad Width de ComboBoxColumn
  • Las propiedades DropDownWidth y DropDownHeight ya no son usadas
  • Mejora al Smart Tag (DesignerActionList)
Nuevas Propiedades:
PopupSizeable True/False Permite poder redimencionar la lista desplegable.
DropDownItemHeight Indica el alto de cada fila en la lista desplegable
DropDownRows Indica la cantidad de filas que seran mostradas la primera ves que se muestre la lista desplegable.
ShowHeaders True/False indica que deben mostrarse u ocultar los encabezados de cada columna
HotTrackItems True/False indica si los items son seguidos cuando el mouse pasa sobre estos.

Descargar
Descargar



Comentarios

  1. Hola Marvin, excelentes mejoras, tu control es cada vez mas y mas robusto!! :D ahora mismo me he incursionado en esto de la extension/creacion de controles para plataforma .NET, y tengo en mente empezar con un combobox de botones (se que ya existen, pero vamos, por algo debo empezar :D) te agradezco mucho por dejar los fuentes del proyecto, son de mucha ayuda para la comunidad de desarrolladores, pdta: si necesito ayuda, ya se a quien acudir ;-)

    ResponderEliminar
  2. Hola Nico, gracias por tus comentarios y suerte en tu nueva meta y si te ayuda te dejo un Link a un ejemplo escrito en C++ sobre como agregar botones a un TextBox que te puede ayudar a que los agregues en un ComboBox

    http://www.catch22.net/tuts/editbutton

    es cierto!!!... esta escrito en C++ no en C# pero en lo que te tienes que enfocar es en las API's de windows que utiliza para que lo puedas hacer en C# y claro!!! cuenta con mi ayuda...

    Salu2,

    ResponderEliminar
  3. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  4. marvin no sirve el link, lo puedes arreglar o enviarmelo al correo F_Starblack@hotmail.com te agreadezco se ve muy bueno el control, gracias

    ResponderEliminar
  5. no estoy empapado en la parte de crear controles, pero quisiera saber si seria sencillo este combo aplicarlo a un control DataGridView en el tipo ComboBoxColumn para q al desplegarse salga de esta manera, seria una opcion muy buena tambien, en mi caso por q manejo mucho este control en mis proyectos, gracias

    ResponderEliminar
  6. lo podrías hacer de la misma manera que si quisieras agregar un DateTimePicker a un DataGridView.

    si no lo lograras hacer me avisas para ayudarte.

    Salu2,

    ResponderEliminar
  7. Hola Marvin como puedo hacer para ajustar el ancho de las columnas mostradas, ya que quiero mostrar un Id de 5 caracteres y un nombre de 50

    ResponderEliminar
    Respuestas
    1. bueno, si te fijas en las propiedades de las columnas cuando las estas creando tiene una propiedad llamada "Width" con esta puede definir el Ancho que tendra cada columna y la lista desplegable sera del ancho de todas las columnas.

      Salu2,

      Eliminar
    2. Gracias Marvin problema resuelto

      Eliminar
    3. Hola Marvin disculpa estoy intentando agregar el comboboxmultiColumn a un datagridview pero no me funciona, si utilizo el combo normal si este el codigo.

      Dim comboboxcolumn As DataGridViewComboBoxColumn = TryCast(DgvListaPrecios.Columns("nombre_lprecio"), DataGridViewComboBoxColumn)

      pero colocando datagridviewComboBoxMulticolumn no ?

      gracias

      Eliminar
    4. OK... Solo dame chance porque entre el trabajo y el GYM casi no me da tiempo de mejorar o hacer nuevas cosas en visual estudio...

      Eliminar
  8. Hello Marvin,

    First of all I want to congratulate you for this great control, as it has many awesome features.
    I'm a newbie at custom controls and I wonder if you ever used it as a repositoryItem for a DataGridView column (ColumnType property)? If so can you please share the code?

    Thank you.

    ResponderEliminar
  9. Hello Marvin,

    First of all I want to congratulate you for this great control, as it has many awesome features.
    I'm a newbie at custom controls and I wonder if you ever used it as a repositoryItem for a DataGridView column (ColumnType property)? If so can you please share the code?

    Thank you,
    Andrei

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

TextBox con Borde Personalizado

Bien, retomando nuevamente mi blog, luego de tanto tiempo ausente, veremos como personalizar el borde del control TextBox con un color diferente. hace poco vi en los foros de MSDN, en el foro de VB.Net esta pregunta, ¿ Cómo puedo cambiar el color del borde de un control TextBox ?, anteriormente también se hizo la misma pregunta en este mismo foro donde yo respondí como hacerlo VB2010 4.0 - Como crear un textbox personalizado . no hay manera fácil de personalizar un control, generalmente se tiene que sobre escribir el evento WndProc para escuchar los mensajes de window y reemplazar la funcionalidad de estos según sea la necesidad o el control. bien, para cambiar el color del borde del control TextBox sin mucha funcionalidad, se debe de escuchar y reemplazar el funcionamiento de los mensajes WM_PAINT y WM_NCPAINT . ¿ Porque WM_PAINT ?, porque cuando cambiamos la propiedad BorderStyle de este control a FixedSingle, quien pinta el borde es el mensaje WM_PAINT no asi el WM_NC

TextBox con Icon/Imagen

Bien, continuando con este articulo: TextBox con borde personalizado , ahora le dare la funcionalidad de poder mostrar un icono o imagen dentro del Control TextBox. Existen dos maneras de hacer esto: Pintar el icono/imagen dentro del control o Pintar el icono/imagen dentro del Non-Client Area del control. Pintar el icono/imagen dentro del control. Antes de escribir el código decidi googlear un poco, para ver si alguien más ya habia tenido la misma idea de usar el mensaje EM_SETMARGINS para dejar el espacio necesario para pintar el icono o imagen ya sea a la derecha o izquierda y me he encontrado con este articulo. Adding an Icon or Control to a TextBox or ComboBox . Pintar el icono/imagen de ntro del Non-Client Area del control. Us ando el Non- Client Area no encontre resultados googleando, así que es la forma que usar e para dib ujar un icono o imagen dentro de un control TextBox. En el control TextEditor que escrib í, utilizo esta manera para pintar el icono

Personalizar DataGridView (II) - Bloquear columnas de solo lectura

Personalizar DataGridView - Actualizaciones Personalizar DataGridView (II.1) - Bloquear columnas de solo lectura. Personalizar DataGridView (III) - Cambiar Diseñador. Bien, continuando con el articulo " Personalizar DataGridView (I) - Pintar área vacía ", ahora lo que haré es darle al control la funcionalidad de bloquear las columnas cuya propiedad " ReadOnly " se establezca en " true ", entiéndase por "Bloquear" el evitar que las columnas cuya propiedad " ReadOnly=true " puedan recibir el foco, ya sea por el teclado o por el ratón ( mouse ). Para tal objetivo agregare una nueva propiedad al control la cual llamare " AllowFocusReadOnlyColumns " cuyo valor predeterminado sera " true ", en caso de ser " false " las columnas marcadas como solo lectura no recibirán el foco. También le daré la funcionalidad de poder avanzar a la siguiente columna al presionar la tecla " ENTER " agregando otr