Error al usar inadecuadamente el XAML

Pues eso… que no es un error que sepas por dónde "meterle mano", o al menos eso me pasó a mí cuando me ocurrió. Me estoy refiriendo a un "Break" que se toma el Debugger de Visual Studio 2012 concretamente cuando llega a la línea que contiene la siguiente cadena: DISABLE_XAML_GENERATED_BREAK_ON_UNHANDLED_EXCEPTION.

El error ocurre porque hay código XAML que no es correcto.
Y cuando digo que "no es correcto" no me refiero a que haya un fallo de que falte un cierre de elemento o algo así, me refiero a que, por ejemplo, estás usando código Xaml en el sitio inadecuado.

Te explico uno de los casos en los que me ocurrió a mí.

En la aplicación del Reloj para Windows 8 que estoy haciendo, y la que te he ido mostrando paso a paso, he creado unas cadenas para usar en el código XAML, concretamente para el ToolTip, etcétera.
Esas cadenas las utilizo (o esa era la intención inicial) para no tener que andar repitiendo el mismo texto en varios sitios y así poder modificarlas una sola vez y se usará esa modificación en las distintas partes de la aplicación en las que la utilizo.
Pues bien, las cadenas las tengo definidas con este código:

<x:String x:Key="AboutClock">Un reloj…</x:String>

Y para usarla lo hago de esta forma (en el código XAML, en este ejemplo de la página principal):

ToolTipService.ToolTip="{StaticResource AboutClock}"

El problema que tuve es que al usar esto último en la definición del estilo de un botón en el que quiero que se muestre un ToolTip me daba ese error.

La definición de la cadena está en App.xaml y el estilo en StandardStyles.xaml y lo usaba de esta forma:

<Setter Property="ToolTipService.ToolTip" Value="{StaticResource AboutClock}" />

 

Pues bien, eso no funciona (a mí no me funciona) y lo tengo que definir directamente en el estilo (de esa forma al aplicar el estilo al botón también se asigna el ToolTip).

 

Bueno, pues esto es todo… espero que te sea de utilidad.

 

Nos vemos.
Guillermo

Esta entrada fue publicada en cosas técnicas, mis cosas y etiquetada , , , , , . Guarda el enlace permanente.