我的 app.xaml:

<Application.Resources>
    <RadialGradientBrush x:Key="myBrush">
        <GradientStop Color="#FFC44EC4" Offset="0" />
        <GradientStop Color="#FF829CEB" Offset="1" />
        <GradientStop Color="#FF793879" Offset="0.669" />
    </RadialGradientBrush>
</Application.Resources>

在这里,我正在尝试使用它:
private void btnOK_Click(object sender, RoutedEventArgs e)
    {
        RadialGradientBrush b = (RadialGradientBrush)Resources["myBrush"];
        //b.GradientStops[1] = new GradientStop(Colors.Red,0.0);
    }

但我不能使用“b”,因为它在定义后为空。我怎样才能得到那个资源?

最佳答案

您正在从控件的资源中“绘制”,请尝试其中之一...

res = this.FindResource("myBrush"); // this 'walks' the tree and will find it
res = Application.Current.Resources["myBrush"]; // or reference app resources directly
res = App.Current.TryFindResource("myBrush");

希望这可以帮助

10-08 14:17