Reference resource in code : Resources « Containers « Silverlight






Reference resource in code

Reference resource in code
    

<UserControl x:Class='SilverlightApplication3.MainPage'
    xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation' 
    xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml'
    xmlns:d='http://schemas.microsoft.com/expression/blend/2008' 
    xmlns:mc='http://schemas.openxmlformats.org/markup-compatibility/2006' 
    mc:Ignorable='d' 
    d:DesignWidth='640' 
    d:DesignHeight='480'>
  <UserControl.Resources>
    <LinearGradientBrush x:Key="ButtonFace">
      <GradientStop Offset="0.00" Color="Purple" />
      <GradientStop Offset="0.50" Color="White" />
      <GradientStop Offset="1.00" Color="Yellow" />
    </LinearGradientBrush>
  </UserControl.Resources>

  <Grid x:Name="LayoutRoot" Background="White">
    <StackPanel>
      <Button Content="Change the Resource" Margin="5"
       Click="cmdChange_Click"
       Background="{StaticResource ButtonFace}"></Button>
      <Button Content="Replace the Resource (not allowed)" Margin="5"
       Click="cmdReplace_Click"
       Background="{StaticResource ButtonFace}"></Button>
    </StackPanel>
  </Grid>
</UserControl>


//File: Page.xaml.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

namespace SilverlightApplication3
{
    public partial class MainPage : UserControl
    {
        public MainPage()
        {
            InitializeComponent();
        }

        private void cmdChange_Click(object sender, RoutedEventArgs e)
        {
            LinearGradientBrush brush = (LinearGradientBrush)this.Resources["ButtonFace"];

            Color color = brush.GradientStops[0].Color;
            brush.GradientStops[0].Color = brush.GradientStops[2].Color;
            brush.GradientStops[2].Color = color;
        }

        private void cmdReplace_Click(object sender, RoutedEventArgs e)
        {
            SolidColorBrush brush = new SolidColorBrush(Colors.Yellow);
            this.Resources["ButtonFace"] = brush;
        }
    }
}

   
    
    
    
  








Related examples in the same category

1.Adding a Your own data class as ResourcesAdding a Your own data class as Resources
2.Managing XAML ResourcesManaging XAML Resources
3.Managing Embedded ResourcesManaging Embedded Resources
4.Customizing a Control's Basic AppearanceCustomizing a Control's Basic Appearance
5.Font Size Resources
6.Logical ResourcesLogical Resources
7.Retrieving assembly manifest resources
8.Resource Lookup
9.Use Resources.Add to add static resouce from code
10.Resource hierarchyResource hierarchy
11.LinearGradientBrush as ResourceLinearGradientBrush as Resource
12.A Uri accessing a relative loose resource
13.A Uri accessing a relative loose resource in a subdirectory
14.An absolute Uri accessing a loose resource
15.An absolute Uri accessing a loose resource in a subdirectory
16.The basic syntax and usage of a resourceThe basic syntax and usage of a resource
17.Referencing a resource at design time. Notice the use of the StaticResource keyword.Referencing a resource at design time. Notice the use of the StaticResource keyword.
18.An invalid use of a resource at design time
19.Use external resource