2009-08-08 8 views
8

Jusqu'à présent, j'ai cetteComment utiliser une ressource pinceau définie en XAML, de C#

<UserControl.Resource> 
<LinearGradientBrush x:Key="KeyDownBrush" .....> 

Maintenant, je voudrais accéder à cette ressource définie lorsqu'une touche est enfoncée et remplacer les objets actuels remplissent le KeyDownBrush , en C#.

J'ai essayé this.Resource.Contains ("KeyDownPress") et ai été en mesure d'obtenir True retourné donc je présume que je suis presque là mais je ne suis pas sûr comment accéder à l'objet et l'analyser correctement à un Brush instance.

Toute aide serait appréciée.

Répondre

9

À partir de votre UserControl:

var brush = this.Resources["KeyDownBrush"] as LinearGradientBrush; 

devrait faire l'affaire.

+0

Merci Matt. Je pensais que je devais être proche, je n'arrivais tout simplement pas à trouver un exemple pour cela dans la documentation où je regardais. Pour tout le monde, le C# que j'ai utilisé ressemble à System.Windows.Media.LinearGraidentBrush aBrush = (System.Windows.Media.LinearGradientBrush) this.Resources ["KeyDownBrush"]; aRectangle.Fill = aBrush; –

Questions connexes