Como alterar a cor de um recurso SolidColorBrush em tempo de execução?

Como posso alterar uma cor em um dicionário de recursos que está sendo usado em outro dicionário de recursos em tempo de execução?

Aqui está a minha configuração:

Colours.xaml:

<SolidColorBrush x:Key="themeColour" Color="#16A8EC"/>

Styles.xaml:

<Style x:Key="titleBar" TargetType="Grid">
    <Setter Property="Background" Value="{DynamicResource themeColour}"/>
</Style>

Window.xaml

.....
<ResourceDictionary.MergedDictionaries>
    <ResourceDictionary Source="res/Styles.xaml"/>
    <ResourceDictionary Source="res/Colours.xaml"/>
</ResourceDictionary.MergedDictionaries>
.....

<Grid Style="{DynamicResource titleBar}"></Grid>

Código por trás:

Application.Current.Resources["themeColour"] = new SolidColorBrush(newColour);

Quando o código é executado, a cor da grade não muda. Eu não acho que Application.Current.Resources ["themeColour"] esteja se referindo ao meu recurso solidcolorbrush, como quando, se eu tentar acessá-lo antes de atribuir uma nova cor, recebo uma exceção de referência de objeto nulo.

Então, como devo acessar o recurso "themeColour"?

questionAnswers(2)

yourAnswerToTheQuestion