Mega Code Archive

 
Categories / C# / WPF
 

Change Fill

<StackPanel xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"   xmlns:d="http://schemas.microsoft.com/expression/interactivedesigner/2006"   mc:Ignorable="d"   x:Class="PaintDrawExamples.ChangeFill"    Width="640" Height="480">   <StackPanel.Resources>     <Storyboard x:Key="OnLoaded"/>   </StackPanel.Resources>   <StackPanel.Triggers>     <EventTrigger RoutedEvent="FrameworkElement.Loaded">       <BeginStoryboard x:Name="OnLoaded_BeginStoryboard" Storyboard="{DynamicResource OnLoaded}"/>     </EventTrigger>   </StackPanel.Triggers>   <Path d:LastTangent="0,0" Width="300" Height="82" x:Name="myShape" RenderTransformOrigin="0.5,0.5" Stretch="Fill" Data="M268,209 L134,209 147,249 250,290 z">     <Path.RenderTransform>       <TransformGroup>         <TranslateTransform X="0" Y="0"/>         <ScaleTransform ScaleX="1" ScaleY="1"/>         <SkewTransform AngleX="0" AngleY="0"/>         <RotateTransform Angle="0"/>         <TranslateTransform X="0" Y="0"/>       </TransformGroup>     </Path.RenderTransform>     <Path.Fill>       <LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">         <GradientStop Color="#11111111" Offset="0"/>         <GradientStop Color="#FFFFFFFF" Offset="1"/>       </LinearGradientBrush>     </Path.Fill>   </Path> </StackPanel> //File:Window.xaml.cs using System; using System.IO; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Navigation; namespace PaintDrawExamples {   public partial class ChangeFill   {     public ChangeFill()     {       this.InitializeComponent();       this.MouseDown += new MouseButtonEventHandler(MouseDownHandler);     }     private void MouseDownHandler(object sender, MouseButtonEventArgs e)     {       LinearGradientBrush brush = (LinearGradientBrush)this.myShape.Fill;       brush.GradientStops[0].Color = Color.FromRgb(0,0,0);     }   } }