2

RadChart のスタイルを設定しようとしています。これは棒グラフで、棒のデフォルトの色を変更したいと考えています。そこで、RadChart.PaletteBrushes を使用し、SolidBrush の色を定義しました (次のリンクでこの方法を見つけました: http://www.telerik.com/help/wpf/radchart-styling-and-appearance-styling-chart-series.html )次のように:

<telerik:RadChart Background="Transparent" HorizontalContentAlignment="Center" HorizontalAlignment="center">
            <telerik:RadChart.PaletteBrushes>
                <SolidColorBrush Color="#FF0B3F74"/> 
                <SolidColorBrush Color="#FF721111"/> 
                <SolidColorBrush Color="#FFA1720B"/> 
            </telerik:RadChart.PaletteBrushes>
        </telerik:RadChart>

しかし今、アプリケーションの実行中に次のような例外が発生します。

'System.Windows.Media.SolidColorBrush' を変更するには、IsFrozen を false に設定する必要があります。

この例外はランダムに発生します。また、スタック トレースでは、RadTransition Control についても言及されています。なぜこのエラーが発生するのでしょうか? どうすれば解決できますか?

4

1 に答える 1

3

私たちも同じ問題を抱えていましたが、さまざまなコントロールがありました。Microsoft と情報を交換した後、彼らは Freeze の実装にバグがあると述べました (修正は .NET 4.5 で行われる可能性があります)。それまでの間、作成時にブラシをフリーズします。

この名前空間を XAML に追加します。

    xmlns:po="http://schemas.microsoft.com/winfx/2006/xaml/presentation/options"

次に、po:Freeze=true をブラシに追加します。

    <SolidColorBrush x:Key="SearchGridHeaderBrush" Color="{StaticResource DefaultHeaderColor}" po:Freeze="true" />
于 2011-09-28T21:10:28.290 に答える