2011-01-08 7 views
1

RadButtonにグラデーションを適用する際にいくつか問題があります。このグラデーションスタイルを適用するとSilverlightアプリが破損するのはなぜですか?

私は私のスタイルで勾配の定義は非常に似dictionairyリソース持っている:私はRadButtonのすべての作品の背景に直接この勾配を適用すると

<LinearGradientBrush x:Key="GridView_HeaderBackground" EndPoint="0.5,1" StartPoint="0.5,0"> 
    <GradientStop Color="#FF5B5B5B" Offset="1"/> 
    <GradientStop Color="#FF868686"/> 
    <GradientStop Color="#FF4F4F4F" Offset="0.42"/> 
    <GradientStop Color="#FF0E0E0E" Offset="0.43"/> 
</LinearGradientBrush> 

。ここで は、ボタンやテンプレートの定義である:

ボタン

<telerik:RadButton Margin="5,10,5,0" Click="RadButton_Click" Tag="30" Content="30 Days" Style="{StaticResource SliderButton}" Background="{StaticResource GridView_HeaderBackground}" /> 

テンプレート:リソースディクショナリにこの勾配を適用するとき

<!-- Style Template for Slider RadButton --> 
<Style x:Key="SliderButton" TargetType="telerik:RadButton"> 

    <Setter Property="Height" Value="30" /> 
    <Setter Property="Foreground" Value="#FFFFFF" /> 
    <Setter Property="BorderThickness" Value="0" /> 
    <Setter Property="Margin" Value="5,2" /> 
</Style> 

しかし、私のアプリケーションは単純になる、それをロードしませんその後、Silverlightのローディング画面とは、ここで

を進めることがない私のアプリを壊しボタンテンプレートです。

ボタン:

<telerik:RadButton Margin="5,10,5,0" Click="RadButton_Click" Tag="30" Content="30 Days" Style="{StaticResource SliderButton}" /> 

テンプレート:

<!-- Style Template for Slider RadButton --> 
    <Style x:Key="SliderButton" TargetType="telerik:RadButton"> 
     <Setter Property="Background" Value="{StaticResource GridView_HeaderBackground}" /> 
     <Setter Property="Height" Value="30" /> 
     <Setter Property="Foreground" Value="#FFFFFF" /> 
     <Setter Property="BorderThickness" Value="0" /> 
     <Setter Property="Margin" Value="5,2" /> 
    </Style> 

私はグーグルクロームでのjsエラーコンソールを観察したとき、私は次のエラーが生成されて気づく:

「を見つけることができません 名/キーResourceWrapperとリソース」

+0

あなたが標準のボタンを使用する場合はどうなりますか? – AnthonyWJones

答えて

3

"GridView_HeaderBackgroundは" "SliderButton" の前に定義する必要があります。それらが同じXamlにある場合、それはドキュメントの順序によって決定されます。

+0

興味深いことに私はこれを考えなかったでしょう。私はチップの先生に感謝します! – BentOnCoding