Foros del Web » Programación para mayores de 30 ;) » .NET »

Cambiar el color de un solo carácter en una linea de ListBox

Estas en el tema de Cambiar el color de un solo carácter en una linea de ListBox en el foro de .NET en Foros del Web. Hola a todos, Pues eso.Lo que pretendo es que pueda cambiar el color de ciertos carácteres,a elección, en una linea de ListBox. Si alguien sabe ...
  #1 (permalink)  
Antiguo 06/02/2014, 06:39
 
Fecha de Ingreso: febrero-2014
Mensajes: 5
Antigüedad: 10 años, 2 meses
Puntos: 0
Cambiar el color de un solo carácter en una linea de ListBox

Hola a todos,

Pues eso.Lo que pretendo es que pueda cambiar el color de ciertos carácteres,a elección, en una linea de ListBox.
Si alguien sabe cómo,le agradeceria me indicase cómo.

Gracias anticipadas y saludos.
  #2 (permalink)  
Antiguo 06/02/2014, 08:02
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Cambiar el color de un solo carácter en una linea de ListBox

Creo que no se puede...
¿Para qué necsitas hacerlo?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 06/02/2014, 09:04
 
Fecha de Ingreso: febrero-2014
Mensajes: 5
Antigüedad: 10 años, 2 meses
Puntos: 0
Respuesta: Cambiar el color de un solo carácter en una linea de ListBox

Hola gnzsoloyo,

Gracias por responder.
Lo queria para ver de forma rápida donde hay errores,marcando con un color distinto los carácteres que indican el error.
No he encontrado mejor método que visualizarlos en un ListBox,ya que las lineas se van visualizando conforme se van produciendo.
Lástima que no se pueda.
Si se te ocurre algo,para solucionar lo que pretendo,te agradeceria me lo indicases.

Gracias y saludos.
  #4 (permalink)  
Antiguo 11/02/2014, 10:06
Avatar de drako_darpan  
Fecha de Ingreso: octubre-2008
Ubicación: Sinaloa
Mensajes: 617
Antigüedad: 15 años, 6 meses
Puntos: 58
Respuesta: Cambiar el color de un solo carácter en una linea de ListBox

Buenos días, bueno de un modo " NATURAL ", vamos a decirlo así, no se puede

Para eso ocupas una buena imaginación y mucha paciencia

Te voy a dar una leve idea, de lo que ami se me ocurre:

1.- Identificar la cadena o bien tomar la cadena de algún campo
2.- Vas a tener que barrer esa cadena, caracter por caracter, para esto, tu string lo vas a tener que convertir a char.
3.- La nueva cadena en char, la vas a tener que barrer de nuevo caracter por caracter
4.- Con esto, vas leyendo campo a campo y buscas el o los caracter(es) que tu ocupas que se identifiquen
5.- Asignar la fuente a tu caracter
6.- Tu cadena regresarla a string y anexarla al control, para poderla mostrar

Hace tiempo puse una manera de invertir cadenas, pero no encuentro el post , si lo encuentro te lo pongo.

  #5 (permalink)  
Antiguo 11/02/2014, 11:08
 
Fecha de Ingreso: febrero-2014
Mensajes: 5
Antigüedad: 10 años, 2 meses
Puntos: 0
Respuesta: Cambiar el color de un solo carácter en una linea de ListBox

Gracias drako_darpan por responder,

La idea en principio, parece buena,Habrá que probarla.
Ya te informaré cuando lo haga.
Y si encuentras el post de invertir cadenas,mehor que mejor,

Gracias y saludos.
  #6 (permalink)  
Antiguo 12/02/2014, 05:07
 
Fecha de Ingreso: febrero-2014
Mensajes: 5
Antigüedad: 10 años, 2 meses
Puntos: 0
Respuesta: Cambiar el color de un solo carácter en una linea de ListBox

Hola drako_darpan.

He estado tratando la solución que tu aportas,pero me encuentro con una dificultad,y es que un caracter es un caracter y está almacenado como tal,y no tiene sentido cambiarle la fuente o el color;otra cosa es escribirlo en algun sitio (TextBox,etc.)
Si se te ocurre como hacer lo que dices,te agradeceria me lo dijeses.

Saludos
  #7 (permalink)  
Antiguo 12/02/2014, 13:20
Avatar de drako_darpan  
Fecha de Ingreso: octubre-2008
Ubicación: Sinaloa
Mensajes: 617
Antigüedad: 15 años, 6 meses
Puntos: 58
Respuesta: Cambiar el color de un solo carácter en una linea de ListBox

Hola que tal, pues por mas que busque no encontré mi post .

La idea seria algo asi:

Código C#:
Ver original
  1. // Se declaran las variables
  2.             Int32 i = 0, nCaracteres = 0, nTotalRegistros = 0, nMascaraFinal = 0;
  3. // Asigno un arreglo con la mascara que necesito
  4.             char[] cImporteFormatear = new char[nMascara];
  5.  
  6. // Obtengo el ancho de la cadena que estoy mandando
  7.             nTotalRegistros = sImporte.Length;
  8.             nMascaraFinal = nMascara - nTotalRegistros;
  9.  
  10.             try
  11.             {
  12. // Esto no me gusta como lo deje jajaja :-P, pero bueno, limpio el arreglo
  13.                 for (i = 0; i <= nMascaraFinal - 1; i++)
  14.                 {
  15.                     cImporteFormatear[i] = ' ';
  16.                 }
  17.  
  18. // Se ejecuta el ciclo del tamaño enviado en nMascara
  19.                 for (i = nMascaraFinal; i < nMascara; i++)
  20.                 {
  21. // Tomo valor por valor y lo asigno al arreglo, previamente creado
  22. // Aquí tu puedes poner la validación de los caracteres que ocupas, ejemplo #, %, etc, etc y les puedes poner un Upper, asi se asignaría en mayúsculas ese carácter únicamente.
  23.                     cImporteFormatear[i] = sImporte[nCaracteres];
  24.                     nCaracteres++;
  25.                 }
  26. // De la cadena obtenida, lo asignas a un string y esa es la que regresas
  27.                 string sImporteFormatear = new string(cImporteFormatear);
  28.                 sImporteFormateado = sImporteFormatear;
  29.             }
  30.             catch (Exception ex)
  31.             {
  32.                 MessageBox.Show(ex.Message.ToString());
  33.             }

Es una idea como te digo , pero espero te sirva
  #8 (permalink)  
Antiguo 13/02/2014, 04:46
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: Cambiar el color de un solo carácter en una linea de ListBox

Quizas este artículo lo encuentres de interés ya que tratan como colorear el texto de un ListBox ;)
__________________
Aviso: No se resuelven dudas por MP!

Etiquetas: color, listbox
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:40.