XAML में संसाधन शब्दकोश रंग बदलने के लिए:कैसे क्रम
<ResourceDictionary>
<Color x:Key="BrushColor1">Red</Color>
<Color x:Key="BrushColor2">Black</Color>
<LinearGradientBrush x:Key="GradientBrush1" StartPoint="0,0.5" EndPoint="1,0.5">
<GradientStop Color="{DynamicResource BrushColor2}" Offset="0" />
<GradientStop Color="{DynamicResource BrushColor1}" Offset="1" />
</LinearGradientBrush>
</ResourceDictionary>
सी # में:
public void CreateTestRect()
{
Rectangle exampleRectangle = new Rectangle();
exampleRectangle.Width = 150;
exampleRectangle.Height = 150;
exampleRectangle.StrokeThickness = 4;
exampleRectangle.Margin = new Thickness(350);
ResourceDictionary resources = this.Resources;
resources["BrushColor1"] = Colors.Pink;
resources["BrushColor2"] = Colors.RoyalBlue;
Brush brush =(Brush)this.FindResource("GradientBrush1");
exampleRectangle.Fill = brush;
canvas.Children.Insert(0, exampleRectangle);
}
सी # में क्रम में उन लोगों के रंग तत्वों कैसे बदलने के लिए। LinearGradient ब्रश गतिशील रूप से बदलना चाहिए?
मैं कुछ इस तरह करना चाहते हैं:
(Color)(this.FindResource("BrushColor1")) = Colors.Pink;
लेकिन मैं असफल रहा।
मैंने कोशिश की, लेकिन फिर भी मैं अपने कैनवास पर रंग नहीं बदल सकता। वैसे भी, धन्यवाद। – dongx
@XiaoruiDong यह काम नहीं करेगा - आपको इसे बदलने के लिए संग्रहीत वास्तविक संसाधन शब्दकोश खोजने की आवश्यकता है। –
मैंने अभी इसे हल किया है। ऐसा लगता है कि केवल ** LinearGradientBrush ** ** डायनामिक रिसोर्स ** का समर्थन नहीं करता है। बाकी ब्रश ** सॉलिडकोलर ब्रश ** इसका समर्थन करता है। – dongx