Detectando Cuando estoy en Diseño

Un post rápido y sencillo, en Windows Forms para detectar cuando estábamos diseñando nuestro Form en código teníamos Windows Forms Control.DesignMode, en WPF tenemos su equivalente y es muy útil porque muchas veces Blend nos dará un error porque falla instrucciones en su constructor que en ejecución no fallan.

Yo utilizo una clase estática para ver si estamos en modo diseño o no

 

 

  1. public static class Designer
  2. {
  3.     private static DependencyObject dummy = new DependencyObject();
  4.     
  5.     public static bool InDesignMode
  6.     {
  7.         get { return DesignerProperties.GetIsInDesignMode(dummy); ;}
  8.     }

Como veis WPF tenemos la clase DesignerProperties que nos permite conocer si estamos en modo diseño, para utilizarla tan sencillo como

 

  1. if (!Designer.InDesignMode)
  2.                 {
  3.                     ….
  4.                 

 

Bien sencillo y muy útil

3 comentarios en “Detectando Cuando estoy en Diseño”

  1. Una pregunta, como sabes en Winforms DesignMode tienes problemas cuando se utiliza sobre controles o formularios heredados, ocurre lo mismo en WPF ?

    Un saludo.

Deja un comentario

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