INSERTAR IMAGENES Y TEXTO EN UNA CELDA DEL DATAGRIDVIEW
-
Tuesday, December 21, 2010 2:59 PM
Buenos dias, yo por aqui de nuevo. Agradeciendole de ante mano su colaboracion con las dudas que he tenido.
He tenido muchas preguntas por que estoy haciendo un software para motel y hay cosas que han sido nuevas para mi pero que gracias a dios y su ayuda he logrado resolver.
mi siguiente duda es la siguiente: como hago para insertae en cada celda del datagridview una imagen y su texto. les explico:
tengo un formulario al que he llamado maestro de recepcion que es donde se visualizan todas las habitaciones que posee el motel. eso ya lo hice, entonces en cada celda se me visualiza el numero de la habitacion y un color dependiendo del estado de la habitacion (libre, ocupada, fuera de servicio, etc) hasta ahi todo bien.
pero el cliente me ha pedido que en ves de colores la celda me muestre una imagen cualquiera que indique que esa habitacion esta en servicio. pero necesito que el codigo de la habitacion me siga apareciendo por que el recepcionista se fijara cual es el numero de la habitacion y ademas con ese numero realizo una cantidad de procesos.
de ante mano muchas gracias por su ayuda.
All Replies
-
Tuesday, December 21, 2010 3:36 PMModerator
hola
has definido una columan del tipo
DataGridViewImageColumn
si es asi solo debes acceder al value de la celda y asignar la imagen
DataGridView1.CurrentRow.Cells("nombrecolumna").Value = Image.FromFile("c:\imagenes\imagen.jpg")
http://social.msdn.microsoft.com/Forums/es-ES/vcses/thread/9e418d5d-98bd-4e26-9f19-8551262537f3
si quieres agregar una row nueva podrias usar
Dim imagen As Image = Image.FromFile("c:\imagenes\imagen.jpg")
DataGridView1.Rows.Add("nombre imagen", imagen)
lo que no recuerdo es si debes definir la propiedad ValueType cuando creas el DataGridViewImageColumn
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina- Marked As Answer by Eduardo PorteschellerMicrosoft Community Contributor, Moderator Monday, December 27, 2010 8:20 PM
-
Tuesday, December 21, 2010 3:38 PMGracias por responder. pero con esto ya podre visualizar el texto y la imgen en la celda??
-
Tuesday, December 21, 2010 3:41 PMModerator
en la misma celda no creo que se pueda, habia apuntado a que uses dos columnas distintasen una muestras la imagen, en la otra la descripcion
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina -
Tuesday, December 21, 2010 3:48 PM
La verdad no me serviria asi, de la forma que tu apuntas yo lo se hacer, necesito es como te comente.
alguna otra forma??
-
Wednesday, December 22, 2010 8:23 AM
Hola:
¿Has probrado a poner una imagen que sea un numero?Un saludo desde Bilbo
Carlos -
Wednesday, December 22, 2010 1:42 PMla idea es que la imagen sea un relojito, o cualquier cosa que indique que la habitacion este en servicio, y el numero si debe ser texto para realizar mis validaciones
-
Wednesday, December 22, 2010 1:49 PMModerator
hola
por ahi debas armar la imagen en runtime, o sea usando System.Drawing tomar la imagen y añadir a esta el texto
esto generara una imagen compuesta (imagen y texto) que resultara en una imagen resultante que agregaras a la celda del DataGridView
o sea apunto a que a la imagen le agregues el texto, por supuesto sin modificar la imagen original, sino que generando una nueva como resultado de esta accion
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina -
Wednesday, December 22, 2010 1:54 PMno entendi de a mucho
-
Thursday, December 23, 2010 9:26 PM
leandro me podrias explicar con algun ejemplo como se haria lo del system.drawing
te agradeceria muchisimo.
-
Friday, December 24, 2010 1:58 PMModerator
hola
no encontre algo completo sobre el tema, pero si para una orientacion
GraphicCreating Text Images On the Fly with GDI+s fromimage
como veras se trabaja con GDI
en el articulo crea una imagen nueva y escribe sobre ella, en tu caso deberas cargar una de un archivo
el tema es obtener el objeto Graphics, que en el ejemplo lo ahce de esta forma
MyGraphics = MyGraphics.FromImage(ImageFortext)
pero tu necesitas una imagen cargar alli, asi que podrias hacer
Image imageFile = Image.FromFile("c:\imagenes\SampImag.jpg");
MyGraphics = MyGraphics.FromImage(imageFile)
en este otor link justo muestra esto
entonces el resto seria seguir el articulo del link y escribir el texto en la imagen, para luego cargarloe n la celda del DatraGridView
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina- Marked As Answer by Eduardo PorteschellerMicrosoft Community Contributor, Moderator Monday, December 27, 2010 8:20 PM
-
Friday, December 24, 2010 2:04 PM
ok lo probare, pero parece que he encontrado una clase que podria hacer esto.
de todos modos probare de las 2 formas y comentare.
gracias leandro y feliz navidad para todos.

