Lenguaje C# VS 19 problema con Win Forms

Iniciado por SonnyCrockett, 4 Abril 2021, 12:21 PM

0 Miembros y 1 Visitante están viendo este tema.

SonnyCrockett

He recogido un proyecto, y al intentar modificarlo, no me aparece la edición de la ventana, solo me aparece el código. Si lo ejecuto, funciona, pero no me deja editarlo.

¿Cómo podría solucionar ese problema?

Muchas gracias.

Serapis

Jamás he tenido un problema similar.
No tengo precisamente esa version así que no sé si pueda haberse añadido alguna caracteristica destinada a cierta seguridad.

Se me ocurre sin embargo que tal vez los ficheros esten protegidos contra escritura y por ello no se puedan editar, aunque en principio esto no debería evitar su edición (aunque luego exigiese guardar la copia en otro fichero, o precisamente señalar que no se puede escribir porque está protegido contra escritura). Pero como digo, al no tener esa version no puede confirmar el caso.

que no aparezca la ventana de código, podría obedecer a alguna directriz de seguridad, aunque puede se rmás simple y que esté ubicada fuera de la vista. Revisa el menú 'Ventana', quizás esté flotante fuera de la vista (caso tipico cunado se opera con dos monitores o alta resolución y luego se retira un monitor o se baja la resolución, esto lo sabe uno cuando es su propio equipo, lógicamente, pero cuando se importa un proyecto desde un origen externo, esa posibilidad existe).

Como digo en el menú 'Ventana', dispones de varias opciones interesantes, también en el menú 'Ver'...

SonnyCrockett

Cita de: Serapis en  4 Abril 2021, 17:08 PM
Jamás he tenido un problema similar.
No tengo precisamente esa version así que no sé si pueda haberse añadido alguna caracteristica destinada a cierta seguridad.

Se me ocurre sin embargo que tal vez los ficheros esten protegidos contra escritura y por ello no se puedan editar, aunque en principio esto no debería evitar su edición (aunque luego exigiese guardar la copia en otro fichero, o precisamente señalar que no se puede escribir porque está protegido contra escritura). Pero como digo, al no tener esa version no puede confirmar el caso.

que no aparezca la ventana de código, podría obedecer a alguna directriz de seguridad, aunque puede se rmás simple y que esté ubicada fuera de la vista. Revisa el menú 'Ventana', quizás esté flotante fuera de la vista (caso tipico cunado se opera con dos monitores o alta resolución y luego se retira un monitor o se baja la resolución, esto lo sabe uno cuando es su propio equipo, lógicamente, pero cuando se importa un proyecto desde un origen externo, esa posibilidad existe).

Como digo en el menú 'Ventana', dispones de varias opciones interesantes, también en el menú 'Ver'...

Buenas tardes.

No está protegido contra escritura. Puedo modificar el código, pero el Form no aparece, está el archivo "designer" pero no me muestra la ventana, solo me muestra el código. Puedo modificar la acción de los botones, pero no puedo añadir un botón dentro del form porque no aparece la ventana. En cambio si ejecuto el programa, si funciona pero no es editable porque está en ejecución.

EdePC

No muestra algún error o advertencia?

Si es una modificación sencilla la que quieres hacer bastaría con agregarla con código puro tal cual lo puedes ver en el archivo designer método InitializeComponent()

También puede estar mal el archivo .sln donde se especifica que ese designer pertenece a tal form.cs. Sería cosa de ver como te ha abierto la Solución o Proyecto, ver si manda errores o advertencias y si ha abierto bien todos los recursos.

SonnyCrockett

Cita de: EdePC en  4 Abril 2021, 21:05 PM
No muestra algún error o advertencia?

Si es una modificación sencilla la que quieres hacer bastaría con agregarla con código puro tal cual lo puedes ver en el archivo designer método InitializeComponent()

También puede estar mal el archivo .sln donde se especifica que ese designer pertenece a tal form.cs. Sería cosa de ver como te ha abierto la Solución o Proyecto, ver si manda errores o advertencias y si ha abierto bien todos los recursos.

buenas.

No muestra ningún error ni advertencia, las modificaciones que quiero hacer es tema de diseño, no de código. Ese es el problema. He buscado por internet, y no encuentro nada.  No sé por qué no me muestra la ventana del Forms y solo me muestra el código.

K-YreX

Si abres el "Explorador de soluciones" de VS2019 para ver la estructura del proyecto, puedes hacer click derecho en el fichero .cs que quieras modificar y elegir "Ver diseñador".
Otra opción es tener abierto el código del fichero e ir a la barra superior de VS: Ver - Diseñador (Shift + F7).

Prueba ambas opciones y nos comentas los resultados.

Cita de: SonnyCrockett en  4 Abril 2021, 18:57 PM
Buenas tardes.

No está protegido contra escritura. Puedo modificar el código, pero el Form no aparece, está el archivo "designer" pero no me muestra la ventana, solo me muestra el código. Puedo modificar la acción de los botones, pero no puedo añadir un botón dentro del form porque no aparece la ventana. En cambio si ejecuto el programa, si funciona pero no es editable porque está en ejecución.
El fichero designer muestra únicamente el código. Para ver la ventana tienes que abrir el .cs superior al designer.
Si no te aparece igual es un problema con la vista del Explorador.
Código (cpp) [Seleccionar]

cout << "Todos tenemos un defecto, un error en nuestro código" << endl;

Serapis

Es muy raro...
Se me ocurre solamente que el diseñador esté completamente vacio y los controles se añadan en tiempo de ejecución (suponiendo claro que no sea una aplicación de consola, pero asumo que sabes distinguir el tipo de proyecto).

¿Puedes compartir el proyecto???...

SonnyCrockett

Cita de: K-YreX en  4 Abril 2021, 23:28 PM
Si abres el "Explorador de soluciones" de VS2019 para ver la estructura del proyecto, puedes hacer click derecho en el fichero .cs que quieras modificar y elegir "Ver diseñador".
Otra opción es tener abierto el código del fichero e ir a la barra superior de VS: Ver - Diseñador (Shift + F7).

Prueba ambas opciones y nos comentas los resultados.
El fichero designer muestra únicamente el código. Para ver la ventana tienes que abrir el .cs superior al designer.
Si no te aparece igual es un problema con la vista del Explorador.

Si, el explorador de soluciones lo tengo a la vista junto con los ficheros cs.

No me da la opción de vista del diseñador. De hecho, si hago shift + F7 no hace nada. Eso lo encontré en internet, pero a mi, no me funciona.

Cita de: Serapis en  5 Abril 2021, 00:58 AM
Es muy raro...
Se me ocurre solamente que el diseñador esté completamente vacio y los controles se añadan en tiempo de ejecución (suponiendo claro que no sea una aplicación de consola, pero asumo que sabes distinguir el tipo de proyecto).

¿Puedes compartir el proyecto???...

Es una aplicación de escritorio de hecho cuando ejecutas el programa, aparece una ventana, pero esa ventana no me deja editarla.

Desafortunadamente no puedo compartir el proyecto.

K-YreX

En el código del fichero .cs tienes declarada alguna clase/estructura antes de la clase que hereda de Form?
De ser así modifica el orden para que la primera clase del fichero sea la que hereda de Form.

Si lo anterior no era el causante del problema, ve al Explorador de soluciones, selecciona el fichero .cs de la vista (el designer no, el más externo) y haciendo click derecho selecciona "Excluir del proyecto". Después haz click derecho en el proyecto - Agregar - Elemento existente... y selecciona nuevamente de la carpeta del proyecto el fichero .cs.

PD: Yo recompilaría el proyecto al hacer alguno de estos cambios por si acaso. Compilar - Recompilar solución.
Código (cpp) [Seleccionar]

cout << "Todos tenemos un defecto, un error en nuestro código" << endl;

SonnyCrockett

Cita de: K-YreX en  5 Abril 2021, 12:55 PM
En el código del fichero .cs tienes declarada alguna clase/estructura antes de la clase que hereda de Form?
De ser así modifica el orden para que la primera clase del fichero sea la que hereda de Form.

Si lo anterior no era el causante del problema, ve al Explorador de soluciones, selecciona el fichero .cs de la vista (el designer no, el más externo) y haciendo click derecho selecciona "Excluir del proyecto". Después haz click derecho en el proyecto - Agregar - Elemento existente... y selecciona nuevamente de la carpeta del proyecto el fichero .cs.

PD: Yo recompilaría el proyecto al hacer alguno de estos cambios por si acaso. Compilar - Recompilar solución.

Solucionado!

Muchísimas gracias!