Cambiando de nombre a Window1

renamingFile

Uno de los primeros problemas con los que se encuentra un diseñador o programador de WPF es qué hacer con Window1. Como ventana principal de la aplicación, lo más común es que queramos darle otro nombre que deje clara su funcionalidad, pero no es tan sencillo. El primer paso es renombrar el fichero desde el Explorador de soluciones. Después tenemos que modificar el nombre del archivo en 3 sitios distintos:

  • Window1.xaml. Tendremos que modificar el x:Class, que hace referencia al nombre completo de la clase parcial donde se almacena el código de la ventana.
  • Window1.xaml.cs. Tanto el nombre de la clase como su constructor deben ser modificados.
  • App.xaml. Este es el punto que la mayoría de la gente olvida y que más problemas termina dando, puesto que no se nos ocurre pensar en las referencias a Window1 fuera de la propia clase. Además, el proyecto compilará perfectamente, pero nos dará una IOException diciendo que no puedo encontrar el recurso window1.xaml. La razón es que dentro de App.xaml especificamos la ventana principal de la aplicación con el atributo StartupUri que, si no lo modificamos, conservará el valor Window1.xaml.

Una vez modificados estos tres ficheros, nuestro proyecto funcionará perfectamente y no tendremos que volver a ver Window1 por ningún sitio.


Rock Tip. Dudo mucho que un grupo como AC/DC necesite introducción, menos aun después del impresionante concierto de este viernes en el Vicente Calderón, así que os dejaré con uno de sus grandes éxitos, You Shook Me All Night Long. Enjoy!!

7 comentarios en “Cambiando de nombre a Window1”

  1. Je je, eso lo envié yo como bug casi el día en que WPF sailó a la calle, me dijeron que lo pasaban al departamente correspondiente y nada más se supo…

  2. Y digo yo, una pregunta un tanto ignorante: … el refactor que viene por defecto en VS no lo hace automáticamente ?? (hasta donde recuerdo ReSharper lo hace bien)

    Saludos

  3. Bruno, nop. Cambias el nombre y a la hora de compilar, peta, pero con más inri: a veces lo cambias y no se entera del cambio y compila, y cuando llevas diez cambios entonces se da por enterado y falla…

    Esto en el VS2008 pasa(ba) con algunas cosas en C# y pasa en C++. Digo (ba) porque hace tiempo que no uso C#…

  4. Yo lo hago de otra manera más simple, creo otra ventana con el nombre que me interese.
    Luego en propiedades del proyecto, donde pone Startup URI: selecciono la nueva y acto seguido ya puedo eliminar la window1

    Saludos

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *