Para congelar un objeto Freezable
declaradas en el marcado, se utiliza el atributo Freeze
definido en el espacio de nombres XML http://schemas.microsoft.com/winfx/2006/xaml/presentation/options
.
En el siguiente ejemplo, un SolidColorBrush
se declara como un recurso de página y se congela. Luego se usa para establecer el fondo de un botón.
<Page
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:po="http://schemas.microsoft.com/winfx/2006/xaml/presentation/options"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="po">
<Page.Resources>
<!-- This brush is frozen -->
<SolidColorBrush x:Key="MyBrush" po:Freeze="True" Color="Red" />
</Page.Resources>
<!-- Use the frozen brush -->
<Button Background="{StaticResource MyBrush}">Click Me</Button>
</Page>
Fuente: Freezable Objects Overview
¿No debería el último atributo ser 'mc: Ignorable =" po "'? – CodeNaked
@CodeNaked, creo que tienes razón. Editado –