Цвет DynamicResource не работает для BorderBrush на границе - ошибка?

Visual Studio 2010 | .NET / WPF 4.0

Я думаю, что это может быть ошибка WPF, но я не могу найти отчет об ошибке об этом. Чтобы понять, что я просто упускаю что-то очевидное, я обращаюсь к stackoverflow за ответами!

Рассмотрим этот xaml (ничего в коде позади):

<Window x:Class="DownExpanders.BorderTest"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="BorderTest" Height="300" Width="300">
    <Window.Resources>
        <Color x:Key="BackgroundColor" R="255" G="0" B="0" A="255"/>
        <Color x:Key="BorderColor" R="0" G="0" B="255" A="255"/>
        <SolidColorBrush x:Key="BorderColorBrush" Color="{DynamicResource BorderColor}"/>
    </Window.Resources>
    <Grid>
        <Border BorderThickness="20">
            <Border.Background>
                <SolidColorBrush Color="{DynamicResource BackgroundColor}"/>
            </Border.Background>
            <Border.BorderBrush>
                <SolidColorBrush Color="{DynamicResource BorderColor}"/>
            </Border.BorderBrush>
        </Border>

        <Border Margin="40" BorderBrush="{DynamicResource BorderColorBrush}" BorderThickness="20"/>
    </Grid>
</Window>

В дизайнере он рендерится как положено. Внешняя граница имеет большую синюю рамку и красный фон, внутренняя граница имеет большую синюю рамку. Отлично.

Когда я запускаю код, внешняя граница не имеет границы - похоже, она просто не загружается. Фон установлен на красный правильно. Между тем, внутренняя граница правильно загружает свою синюю рамку.

Если я изменю все «DynamicResource» на «StaticResource», он будет правильно отображаться при запуске. Несоответствие действительно беспокоит меня, и я не могу понять это. \ Так:

Почему DynamicResource не работает для BorderBrush?

Учитывая № 1, почемуделает это работает для фона?Почему явное определение однотонной кисти в ресурсах, кажется, исправляет ситуацию?РЕДАКТИРОВАТЬ:

Похоже, это ошибка, которую MS решила не исправлять (спасибо

Шеридан по ссылке):http://connect.microsoft.com/VisualStudio/feedback/details/589898/wpf-border-borderbrush-does-not-see-changes-in-dynamic-resourceИнтересно, что все еще происходит в .net 4.5.50760, поэтому, если это ошибка, они еще не исправили ее.

Ответы на вопрос(5)

Ваш ответ на вопрос