none
¿Se puede hacer un ListBox multilínea? RRS feed

  • Pregunta

  • Tengo una aplicación en la que se hace uso de un ListBox para ir mostrando errores de un lector biométrico. El problema es que, cuando el error es demasiado largo, el contenido no se ajusta a los bordes del listbox.

    ¿Cómo puedo hacer esto?


    Gabriela
    lunes, 31 de enero de 2011 20:20

Respuestas

Todas las respuestas

  • Si es un DrawMode.OwnerDrawVariable, podrás overridear el OnDrawItem(). Imagino que habrá que esperar también algún measureitem, para cada item.

    Digo, subclass del listbox y en el OnDrawItem() pintas a tu gusto.

     

    lunes, 31 de enero de 2011 20:34
  • en el listbox estandar de .net no se si se puede pero podrias suar algun otro control que se adapte mejor a esta necesidad

    An editable multi-line listbox for .NET

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    lunes, 31 de enero de 2011 20:42
  • Ok, ya veo como es que funciona la página de Tuttini.

    Cuando no se tiene idea de la respuesta, un link a un estudiante indú de una universidad americana, con tiempo libre para escribir articulitos en codeproject, es preferible a cualquier trato con los nativos.

    A estos últimos, ni la hora.

    Digo, ¿por qué no entrar directamente a codeproject, entonces?

    martes, 1 de febrero de 2011 15:08
  • :-) Hola Gabriela, En WPF es muy sencillo, pero en cambio en WinForms es un drama, ya que tienes que recurrir a OwnerDraw... ¿estás a tiempo de cambiar a WPF? Saludos,

    No olvides marcar la respuesta como correcta si te ha sido de utilidad :-)

    [MS-MVP-MCTS]

    Follow me on Facebook or Twitter!

    Mi Perfil MVP en: https://mvp.support.microsoft.com/profile/Lluis
    NUG: http://andorradotnet.com
    Web: http://www.ordeeno.com
    Geeks: http://geeks.ms/blogs/lfranco

    martes, 1 de febrero de 2011 15:18
    Moderador
  • Buenas tardes

    Walter Miguel te pediría un poco de respeto a la hora de contestar en el foro por favor. Cualquier solución a un problema es bien recibida tanto si viene de CodeProject como si viene de cualquier sitio.

     

    Un saludo.

     


    Javier Torrecilla
    Para el correcto funcionamiento, y que otros usuarios se puedan beneficiar de la solucion de esta pregunta por favor marca las respuestas que te hayan ayudado como "Respuesta".
    Si la respuesta te ha sido util Votala.
    Mi Blog: Jtorrecilla
    Enlace a Faq de Winforms en Ingles Muy bueno
    martes, 1 de febrero de 2011 15:25
    Moderador
  • hola Walter

    veo que has criticado mi respuesta, si puede ser que no sea la mejor, pero es la que vi que podia ayudar

    ademas no has aportaras una solucion, solo has criticado

    en cambio Lluis, hizo un buen aporte (mas alla que despues a quien hace la pregunta le ayude o no), eso es lo positivo a destacar, aporto en lugar de criticar por criticar

    es mas al comentario de LLuis le sumaria que los controles de WPF podrian usarse en WinForms, por medio de

    WPF Tutorial - Using WPF In WinFormsUsing

    esto podria ser otra opcion valida, repito puede que esta tampoco sea la mejor opcion, pero hay al menos alternativas

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    martes, 1 de febrero de 2011 15:57
  • :-)
    Hola Walter,

    Maticemos:

    1. Estoy de acuerdo en que algunos de los integrantes del foro tienen necesidades cuasi-compulsivas a la hora de contestar TODAS las respuestas posibles.
    2. También creo que últimamente se tiende a contestar más preguntas pero de peor modo (aunque estamos trabajando en ello).

    Sin embargo (y espero que no te lo tomes a mal lo que voy a decir, nada más lejos de mi intención), creo que en este caso la respuesta de Leandro es mejor que no contestar nada, no? Yo por mi parte creo que es una respuesta 100% válida.

    En muchas ocasiones si podemos dar una respuesta, la damos. Pero en otras ocasiones, yo mismo pongo enlaces en los que creo que está la solución... y creo que es una respuesta perfectamente válida.

    Piensa que nadie cobra un duro por ayudar a los demás, y (aunque a veces parezca lo contrario) tenemos una vida privada, y no estamos las 24 horas del día contestando en los foros...

    En fin, no pasa nada pero creo que tu respuesta estaba un poco fuera de tono. De todos modos si quieres comentar el tema conmigo, abajo en mi firma tienes mis datos de contacto para contarme lo que quieras, ok?

    Un saludo y espero que lo tengas en cuenta para otra ocasión. Aquí estamos todos para ayudar, ok?


    No olvides marcar la respuesta como correcta si te ha sido de utilidad :-)

    [MS-MVP-MCTS]

    Follow me on Facebook or Twitter!

    Mi Perfil MVP en: https://mvp.support.microsoft.com/profile/Lluis
    NUG: http://andorradotnet.com
    Web: http://www.ordeeno.com
    Geeks: http://geeks.ms/blogs/lfranco

    martes, 1 de febrero de 2011 16:01
    Moderador
  • Ya que esto se ha ido off-topic total, mi granito de arena. No veo cual es el problema en dar un link si ese link tiene la solución a la pregunta. Es más, me parece mucho mejor respuesta por lo general que escribir código. Muchas veces entro en el foro y me encuentro:

    • Una pregunta que tengo que leer tres veces porque no entiendo que narices quiere decir.
    • Una pregunta que se resuelve en un minuto buscando en google y mirando la MSDN.
    • Alguien que tiene un error pero no da nada de información al respecto.
    • Alguien que solo quiere que le solucionen la papeleta haciédole su trabajo.

    En general, cada vez que veo algo así me hierve la sangre. Primero, porque si quieres una buena respuesta, por favor, moléstate en escribir una buena pregunta! Redáctala de forma correcta, da toda la información necesaria, usa los puñeteros tags para formatear código en vez de pegar un chorizo ilegible... Y por favor, busca un poquito antes de preguntar, que de verdad, casi nadie es tan original de tener una pregunta que no haya sido respondida antes.

    Y segundo, el foro es (en mi opinión) para resolver dudas y orientar a la gente. No somos depuradores de código en remoto y bajo demanda. Ni al que pregunta, ni a los que responden, les ayuda a la larga darle a alguien un trozo de código que se va a limitar a copiar y pegar sin entender, porque esa persona no aprende y volverá ante la mínima duda, y así el nivel del foro nunca mejorará.

    Ale, mis dos centimos de eurillo...

    Vicente Cartas Espinel - MVP XNA/DirectX

    Twitter - VicenteCartas

    Blog about C# and XNA Development

    Blog about Role Playing Games

    martes, 1 de febrero de 2011 16:18
  • mmm...

    bueno, sin intención de aportar a la discución que esta muy amena.

    la respuesta de Walter si tiene que ver con el link que paso Leandro, el problema es que Walter no tipifico un ejemplo a diferencia del link cosa que muchos de los que preguntan esperan un ejemplo funcionable a su problema y no que te indiquen que propiedades cambiar y que eventos sobreescribir en la mayoria de los casos.

    pero que apuntaba a la solución viendo el código del Link, si aputaba a la solución.

    si esta mal la critica, comica pero mala, yo he hecho aportes con link de otros ya que no todos tenemos el tiempo de sobra como para hacer un ejemplo funcionable, así que si no tienes tiempo para hacerlo y conoces un link sobre el tema entonces lo pasas para ayudar al que pregunta.

    lo otro convinar WPF con WinForm vuelve la aplicación muy pesada, te lo digo por experiencia, y cambiar a WPF sin previa introducción de lo que es WPF mejor queda en WinForm porque si aqui tienes problemas haya tendras ......, es más facil, cuando ya lo conoces pero antes es un dolor de h.... porque quieres hacer las cosas como si estubieras en WinForm.

    bueno... cualquier cosa hay me avisan.

    Salu2,


    Marvin E. Pineda

    Marvin's Blog
    San Pedro Sula
    Honduras. C.A.


    Aún el necio cuando calla, es contado por sabio.
    martes, 1 de febrero de 2011 16:33
    Moderador