Principales respuestas
Mantener propiedades de formulario cerrando el mismo

Pregunta
-
Hola ! mi duda era como mantener el color de botones cerrando el formulario..
Objetivo: Quiero lograr que se mantenga los colores de mis botones, cree un formulario en donde hay 24 botones de color verde, los botones representan las mesas y el color verde la disponibilidad.
Pasos que llevaron a reproducir el error: yo asigne boton por boton el color verde. y un handler para todos los botones en donde cuando haga click se convierte en rojo.
Resultados esperados: esperaba que mis botones mantuvieran el color aun cerrandolo, porq cuando lo cierro y lo abro de nuevo, se resetean todos los colores y todas las mesas se ponen en verde.
Ojala sepan responder mi duda, desde ya muchas gracias !!
Respuestas
-
Hola Cervera Nicolas:
Tienes varias opciones. Una es que el formulario principal, que llama a tu formulario de los botones, y en el principal, almacenas en una colección los valores de los botones. Cuando tu handler cambia el color, además cambia un valor de esta colección en el formulario padre. Siempre que abras el formulario hijo, lee los valores del formulario padre.
Otra opción de un modo similar, es tenerlo en una clase con una colección estática, o que implemente un patrón singleton, de manera, que esta es la que tiene los valores correspondientes a los botones.
Otra opción, es que lo guardes en un archivo de configuración.
Patrón Singleton
http://www.eslomas.com/2005/08/patron-singleton-con-c-Sharp/
Archivo de configuración
http://ajpdsoft.com/modules.php?name=Foros&file=viewtopic&t=1534
- Marcado como respuesta Nicolás Cervera jueves, 23 de mayo de 2019 17:57
-
hola
>>esperaba que mis botones mantuvieran el color aun cerrandolo, porq cuando lo cierro y lo abro de nuevo, se resetean todos los colores y todas las mesas se ponen en verde
Tienes que persistir los datos del color de cada boton, para esto puedes usar una base de datos como ser Sql Compact o Sqlite o si quieres algo mas grande podria ser Sql Server
o tambien podrias crear un clase que serializas y deserializas a xml, no es una db en si, pero sirve para mantener los estados
Procedimiento para serializar un objeto
mas alla del medio esta claro que tienes que persistir los datos para poder luego obtenerlos y volver asignar a los botones su color
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Marcado como respuesta Nicolás Cervera jueves, 23 de mayo de 2019 18:03
Todas las respuestas
-
Hola Cervera Nicolas:
Tienes varias opciones. Una es que el formulario principal, que llama a tu formulario de los botones, y en el principal, almacenas en una colección los valores de los botones. Cuando tu handler cambia el color, además cambia un valor de esta colección en el formulario padre. Siempre que abras el formulario hijo, lee los valores del formulario padre.
Otra opción de un modo similar, es tenerlo en una clase con una colección estática, o que implemente un patrón singleton, de manera, que esta es la que tiene los valores correspondientes a los botones.
Otra opción, es que lo guardes en un archivo de configuración.
Patrón Singleton
http://www.eslomas.com/2005/08/patron-singleton-con-c-Sharp/
Archivo de configuración
http://ajpdsoft.com/modules.php?name=Foros&file=viewtopic&t=1534
- Marcado como respuesta Nicolás Cervera jueves, 23 de mayo de 2019 17:57
-
-
hola
>>esperaba que mis botones mantuvieran el color aun cerrandolo, porq cuando lo cierro y lo abro de nuevo, se resetean todos los colores y todas las mesas se ponen en verde
Tienes que persistir los datos del color de cada boton, para esto puedes usar una base de datos como ser Sql Compact o Sqlite o si quieres algo mas grande podria ser Sql Server
o tambien podrias crear un clase que serializas y deserializas a xml, no es una db en si, pero sirve para mantener los estados
Procedimiento para serializar un objeto
mas alla del medio esta claro que tienes que persistir los datos para poder luego obtenerlos y volver asignar a los botones su color
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Marcado como respuesta Nicolás Cervera jueves, 23 de mayo de 2019 18:03
-