Obtendo um ComponentResourceKey para trabalhar?

Eu estou construindo um aplicativo WPF com vários assemblies e quero compartilhar um dicionário de recursos entre eles. Isso requer umComponentResourceKey. Eu construí um pequeno demo para testar o CRK, e não consigo fazê-lo funcionar.

Minha demonstração tem dois projetos, um projeto do WPF chamadoDemonstraçãoe uma DLL chamadaComum. oComum projeto tem uma pasta chamadaTemas. Ele contém meu dicionário de recursos,generic.xaml. Aqui está o texto do dicionário de recursos:

<ResourceDictionary 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespace:Common" >

    <SolidColorBrush 
        x:Key="{ComponentResourceKey TypeInTargetAssembly={x:Type local:SharedResources}, ResourceId=RedSolidBrush}" 
        Color="Red"/>

</ResourceDictionary>

Comum também contém uma classe chamadaSharedResources.cs. Ele contém uma propriedade para referenciar o recurso Brush no dicionário:

public static ComponentResourceKey RedSolidBrush
{
    get { return new ComponentResourceKey(typeof (SharedResources), "RedSolidBrush"); }
}

Finalmente, a janela principal da minhaDemonstração projeto faz referência ao recurso de pincel para preencher um retângulo:

<Window x:Class="ComponentResourceKeyDemo.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:res="clr-namespace:Common;assembly=Common"
    Title="Window1" Height="300" Width="300">
    <Grid>
        <Rectangle Height="100" Width="100" Stroke="Black" Fill="{DynamicResource {ComponentResourceKey TypeInTargetAssembly={x:Type res:SharedResources}, ResourceId=RedSolidBrush}}" />
    </Grid>
</Window>

Não consigo encontrar o motivo pelo qual não está funcionando. Ele compila bem no VS 2008 e no Blend, mas o recurso não é invocado. A única pista que tenho é uma mensagem de erro no Blend:

The Resource "{ComponentResourceKey ResourceId=RedSolidBrush, TypeInTargetAssembly={x:Type res:SharedResources}}" could not be resolved.

Alguma idéia de por que isso não está funcionando? Obrigado pela ajuda.

questionAnswers(1)

yourAnswerToTheQuestion