Change Fill : UI Element « Windows Presentation Foundation « C# / CSharp Tutorial






<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);
    }
  }
}
WPF Change Fill








24.48.UI Element
24.48.1.Parent and child timelines with default HoldEnd FillBehaviorParent and child timelines with default HoldEnd FillBehavior
24.48.2.Freezables and elementFreezables and element
24.48.3.Define a resource at the page root level on a FrameworkElement and reference itDefine a resource at the page root level on a FrameworkElement and reference it
24.48.4.Print Logical TreePrint Logical Tree
24.48.5.Print Visual TreePrint Visual Tree
24.48.6.Find enclosure componentFind enclosure component
24.48.7.Logical Visual Tree SampleLogical Visual Tree Sample
24.48.8.About Dialog with Tree WalkingAbout Dialog with Tree Walking
24.48.9.Point Hit Test with VisualTreeHelper.HitTestPoint Hit Test with VisualTreeHelper.HitTest
24.48.10.Find inner visual elementFind inner visual element
24.48.11.Print Visual(Canvas)Print Visual(Canvas)
24.48.12.Change control background in mouse enter and leaveChange control background in mouse enter and leave
24.48.13.Changing graphical elementsChanging graphical elements
24.48.14.Change the Visibility property of a UIElement.Change the Visibility property of a UIElement.
24.48.15.Change FillChange Fill
24.48.16.Extend FrameworkElement to create your own shape
24.48.17.Dump Content Property Attributes