2010-03-06 14 views
6

Tengo la aplicación WPF 4 que tiene una cantidad de UserControls que comparten estilos en sus controles secundarios. Así que estoy creando una serie de estilos en mi App.xaml como. Por ejemplo:El recurso no se pudo resolver (VS 2010 RC)

<Style x:Key="ViewTitle" TargetType="{x:Type Border}"> 
    <Setter Property="BorderBrush" Value="LightGray" /> 
    <Setter Property="HorizontalAlignment" Value="Stretch" /> 
    <Setter Property="VerticalAlignment" Value="Top" /> 
</Style> 

Luego, en mis UserControls utilizo StaticResource hacer referencia a ellas, por ejemplo:

<Border Style="{StaticResource ViewTitle}"> 
    <TextBlock Margin="6,3,4,5" FontSize="18" FontWeight="Bold" Foreground="White" HorizontalAlignment="Left" Text="Host Management" /> 
</Border> 

Todo esto funciona bien. El problema es que Visual Studio 2010 RC está poniendo un squiggly azul bajo la referencia de StaticResource y diciendo: El recurso "ViewTitle" no se pudo resolver.

¿Qué pasa con eso? ¿Es esto un problema con Visual Studio o estoy haciendo algo mal?

+0

¿Recibe un error en tiempo de compilación o en tiempo de ejecución, o sólo el azul ondulante? Si es solo el azul ondulante, y todo funciona bien en el tiempo de ejecución, lo escribiría como diseñador falla. – itowlson

+0

Sí, simplemente un diseñador Squiggly. Se construye y funciona bien. Soy nuevo en WPF por lo Sospechaba que lo estaba haciendo mal. – BrettRobi

+0

También tengo el mismo problema :( –

Respuesta

10

De su nota en los comentarios que "se desarrolla y funciona bien", esto es casi seguro un problema con Visual Studio. Desafortunadamente, el diseñador de VS WPF es infame, y con frecuencia no puede resolver o manejar XAML perfectamente legal. La única prueba verdadera, por lo tanto, es compilar y ejecutar: molesto, pero simplemente algo con lo que uno aprende a vivir.

puede encontrar que el diseñador de Expression Blend maneja mejor esta situación. Blend apunta más a ser un diseñador visual (los diseñadores gráficos son los principales usuarios), pero Blend 3 ha mejorado significativamente el soporte para editar el código fuente XAML. Puede valer la pena intentarlo.

1

Este problema se ha "resuelto" en Expression Blend 4.

Blend 4 automáticamente le da la opción de localizar los recursos de tiempo de diseño si usted tiene un recurso que podría ni ser resuelto.

Blend hará un DesignTimeResourceDictionary desde el que accederá a sus recursos.

Sin embargo, esto no le ayuda mucho si VS2010 es su editor principal :(

La solución con una mezcla 4:

http://adamkinney.wordpress.com/2010/05/04/design-time-resources-in-expression-blend-4-rc/

Cuestiones relacionadas