2010-02-04 12 views
10

He hecho mi propio convertidor personalizado, que con una cadena devuelve Brush. Ahora puedo devolver pinceles constantes como Brushes.Red, etc., pero realmente quiero usar mis propios colores que he definido en un recurso para toda la aplicación.WPF: Hacer referencia a los recursos de toda la aplicación en el código subyacente

¿Cómo hago referencia a los recursos de toda la aplicación de mi propia clase de convertidor personalizada? Usaría FindResource pero como dije, esto es de mi propia clase de convertidor, no una ventana o control.

Respuesta

2

Agregando a la respuesta de Reed, si su diccionario de recursos es un archivo XAML independiente, necesita asegurarse de que (como dice Reed) "esté definido en su Aplicación".

App.xaml:

<Application x:Class="WpfApplication10.App" 
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
      StartupUri="MainWindow.xaml"> 
    <Application.Resources> 
     <ResourceDictionary Source="Dictionary1.xaml" /> 
    </Application.Resources> 
</Application> 

Dictionary1.xaml:

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> 
    <TextBlock x:Key="k_foo" Text="FOO" /> 
</ResourceDictionary> 

El Build Action en este archivo XAML diccionario se puede configurar para Page. Debe estar en el mismo directorio que el archivo App.xaml.

Cuestiones relacionadas