<
Window.Background
>
< LinearGradientBrush EndPoint ="0.5,1" StartPoint ="0.5,0" >
< GradientStop Color ="Black" Offset ="0" />
< GradientStop Color ="#FF666666" Offset ="1" />
</ LinearGradientBrush >
</ Window.Background >
< Window.Resources >
< DrawingBrush x:Key ="MyWireBrushResource"
Viewport ="0,0,10,10" ViewportUnits ="Absolute" TileMode ="Tile" >
< DrawingBrush.Drawing >
< DrawingGroup >
< DrawingGroup.Children >
< GeometryDrawing Geometry ="M0,0 L1,0 1,0.1, 0,0.1Z" Brush ="#66CCCCFF" />
< GeometryDrawing Geometry ="M0,0 L0,1 0.1,1, 0.1,0Z" Brush ="#66CCCCFF" />
</ DrawingGroup.Children >
</ DrawingGroup >
</ DrawingBrush.Drawing >
</ DrawingBrush >
</ Window.Resources >
< StackPanel Margin ="40" >
< Border Name ="TextBorder" HorizontalAlignment ="Left"
Background =" {StaticResource ResourceKey=MyWireBrushResource} "
VerticalAlignment ="Center" >
< TextBlock Name ="RealText" FontFamily ="Segoe UI" FontSize ="60px"
Margin ="40" Foreground ="White" > Windows 7
< TextBlock.TextEffects >
< TextEffect PositionCount ="1" x:Name ="MyTextEffect" >
< TextEffect.Transform >
< SkewTransform x:Name ="TextEffectSkewTransform" CenterX ="180"
CenterY ="30" >
</ SkewTransform >
</ TextEffect.Transform >
</ TextEffect >
</ TextBlock.TextEffects >
< TextBlock.Triggers >
< EventTrigger RoutedEvent ="TextBlock.Loaded" >
< BeginStoryboard >
< Storyboard >
< DoubleAnimation From ="0" To ="15" Duration ="0:0:0.25"
RepeatBehavior ="Forever"
AutoReverse ="True"
Storyboard.TargetName ="TextEffectSkewTransform"
Storyboard.TargetProperty ="AngleX" ></ DoubleAnimation >
< DoubleAnimation From ="0" To ="43" Duration ="0:0:0.5"
RepeatBehavior ="Forever"
AutoReverse ="True"
Storyboard.TargetName ="TextEffectSkewTransform"
Storyboard.TargetProperty ="AngleY" ></ DoubleAnimation >
< DoubleAnimation From ="30" To ="400" Duration ="0:0:13"
RepeatBehavior ="Forever"
AutoReverse ="True"
Storyboard.TargetName ="TextEffectSkewTransform"
Storyboard.TargetProperty ="CenterX" ></ DoubleAnimation >
< Int32AnimationUsingKeyFrames
Storyboard.TargetName ="MyTextEffect"
Storyboard.TargetProperty ="PositionStart" Duration ="0:0:13"
AutoReverse ="True" RepeatBehavior ="Forever" >
< Int32AnimationUsingKeyFrames.KeyFrames >
< DiscreteInt32KeyFrame Value ="0" KeyTime ="0:0:0" >
</ DiscreteInt32KeyFrame >
< DiscreteInt32KeyFrame Value ="1" KeyTime ="0:0:1" />
< DiscreteInt32KeyFrame Value ="2" KeyTime ="0:0:2" />
< DiscreteInt32KeyFrame Value ="3" KeyTime ="0:0:3" />
< DiscreteInt32KeyFrame Value ="4" KeyTime ="0:0:4" />
< DiscreteInt32KeyFrame Value ="5" KeyTime ="0:0:5" />
< DiscreteInt32KeyFrame Value ="6" KeyTime ="0:0:6" />
< DiscreteInt32KeyFrame Value ="7" KeyTime ="0:0:7" />
< DiscreteInt32KeyFrame Value ="8" KeyTime ="0:0:8" />
< DiscreteInt32KeyFrame Value ="9" KeyTime ="0:0:9" />
< DiscreteInt32KeyFrame Value ="10" KeyTime ="0:0:10" />
< DiscreteInt32KeyFrame Value ="11" KeyTime ="0:0:11" />
< DiscreteInt32KeyFrame Value ="12" KeyTime ="0:0:12" />
</ Int32AnimationUsingKeyFrames.KeyFrames >
</ Int32AnimationUsingKeyFrames >
</ Storyboard >
</ BeginStoryboard >
</ EventTrigger >
</ TextBlock.Triggers >
</ TextBlock >
</ Border >
< Rectangle Name ="ReflectedText" Height =" {Binding ElementName=TextBorder,Path=ActualHeight} "
Width =" {Binding ElementName=TextBorder,Path=ActualWidth} " HorizontalAlignment ="Left"
VerticalAlignment ="Top" >
< Rectangle.OpacityMask >
< LinearGradientBrush StartPoint ="0.5,0" EndPoint ="0.5,1" >
< LinearGradientBrush.GradientStops >
< GradientStop Offset ="0.0" Color ="#66000000" ></ GradientStop >
< GradientStop Offset ="1.0" Color ="#00000000" ></ GradientStop >
</ LinearGradientBrush.GradientStops >
</ LinearGradientBrush >
</ Rectangle.OpacityMask >
< Rectangle.Fill >
< VisualBrush Visual =" {Binding ElementName=TextBorder} " >
< VisualBrush.RelativeTransform >
< TransformGroup >
< ScaleTransform ScaleX ="1" ScaleY ="-1" ></ ScaleTransform >
< TranslateTransform Y ="1" ></ TranslateTransform >
</ TransformGroup >
</ VisualBrush.RelativeTransform >
</ VisualBrush >
</ Rectangle.Fill >
</ Rectangle >
</ StackPanel >
< LinearGradientBrush EndPoint ="0.5,1" StartPoint ="0.5,0" >
< GradientStop Color ="Black" Offset ="0" />
< GradientStop Color ="#FF666666" Offset ="1" />
</ LinearGradientBrush >
</ Window.Background >
< Window.Resources >
< DrawingBrush x:Key ="MyWireBrushResource"
Viewport ="0,0,10,10" ViewportUnits ="Absolute" TileMode ="Tile" >
< DrawingBrush.Drawing >
< DrawingGroup >
< DrawingGroup.Children >
< GeometryDrawing Geometry ="M0,0 L1,0 1,0.1, 0,0.1Z" Brush ="#66CCCCFF" />
< GeometryDrawing Geometry ="M0,0 L0,1 0.1,1, 0.1,0Z" Brush ="#66CCCCFF" />
</ DrawingGroup.Children >
</ DrawingGroup >
</ DrawingBrush.Drawing >
</ DrawingBrush >
</ Window.Resources >
< StackPanel Margin ="40" >
< Border Name ="TextBorder" HorizontalAlignment ="Left"
Background =" {StaticResource ResourceKey=MyWireBrushResource} "
VerticalAlignment ="Center" >
< TextBlock Name ="RealText" FontFamily ="Segoe UI" FontSize ="60px"
Margin ="40" Foreground ="White" > Windows 7
< TextBlock.TextEffects >
< TextEffect PositionCount ="1" x:Name ="MyTextEffect" >
< TextEffect.Transform >
< SkewTransform x:Name ="TextEffectSkewTransform" CenterX ="180"
CenterY ="30" >
</ SkewTransform >
</ TextEffect.Transform >
</ TextEffect >
</ TextBlock.TextEffects >
< TextBlock.Triggers >
< EventTrigger RoutedEvent ="TextBlock.Loaded" >
< BeginStoryboard >
< Storyboard >
< DoubleAnimation From ="0" To ="15" Duration ="0:0:0.25"
RepeatBehavior ="Forever"
AutoReverse ="True"
Storyboard.TargetName ="TextEffectSkewTransform"
Storyboard.TargetProperty ="AngleX" ></ DoubleAnimation >
< DoubleAnimation From ="0" To ="43" Duration ="0:0:0.5"
RepeatBehavior ="Forever"
AutoReverse ="True"
Storyboard.TargetName ="TextEffectSkewTransform"
Storyboard.TargetProperty ="AngleY" ></ DoubleAnimation >
< DoubleAnimation From ="30" To ="400" Duration ="0:0:13"
RepeatBehavior ="Forever"
AutoReverse ="True"
Storyboard.TargetName ="TextEffectSkewTransform"
Storyboard.TargetProperty ="CenterX" ></ DoubleAnimation >
< Int32AnimationUsingKeyFrames
Storyboard.TargetName ="MyTextEffect"
Storyboard.TargetProperty ="PositionStart" Duration ="0:0:13"
AutoReverse ="True" RepeatBehavior ="Forever" >
< Int32AnimationUsingKeyFrames.KeyFrames >
< DiscreteInt32KeyFrame Value ="0" KeyTime ="0:0:0" >
</ DiscreteInt32KeyFrame >
< DiscreteInt32KeyFrame Value ="1" KeyTime ="0:0:1" />
< DiscreteInt32KeyFrame Value ="2" KeyTime ="0:0:2" />
< DiscreteInt32KeyFrame Value ="3" KeyTime ="0:0:3" />
< DiscreteInt32KeyFrame Value ="4" KeyTime ="0:0:4" />
< DiscreteInt32KeyFrame Value ="5" KeyTime ="0:0:5" />
< DiscreteInt32KeyFrame Value ="6" KeyTime ="0:0:6" />
< DiscreteInt32KeyFrame Value ="7" KeyTime ="0:0:7" />
< DiscreteInt32KeyFrame Value ="8" KeyTime ="0:0:8" />
< DiscreteInt32KeyFrame Value ="9" KeyTime ="0:0:9" />
< DiscreteInt32KeyFrame Value ="10" KeyTime ="0:0:10" />
< DiscreteInt32KeyFrame Value ="11" KeyTime ="0:0:11" />
< DiscreteInt32KeyFrame Value ="12" KeyTime ="0:0:12" />
</ Int32AnimationUsingKeyFrames.KeyFrames >
</ Int32AnimationUsingKeyFrames >
</ Storyboard >
</ BeginStoryboard >
</ EventTrigger >
</ TextBlock.Triggers >
</ TextBlock >
</ Border >
< Rectangle Name ="ReflectedText" Height =" {Binding ElementName=TextBorder,Path=ActualHeight} "
Width =" {Binding ElementName=TextBorder,Path=ActualWidth} " HorizontalAlignment ="Left"
VerticalAlignment ="Top" >
< Rectangle.OpacityMask >
< LinearGradientBrush StartPoint ="0.5,0" EndPoint ="0.5,1" >
< LinearGradientBrush.GradientStops >
< GradientStop Offset ="0.0" Color ="#66000000" ></ GradientStop >
< GradientStop Offset ="1.0" Color ="#00000000" ></ GradientStop >
</ LinearGradientBrush.GradientStops >
</ LinearGradientBrush >
</ Rectangle.OpacityMask >
< Rectangle.Fill >
< VisualBrush Visual =" {Binding ElementName=TextBorder} " >
< VisualBrush.RelativeTransform >
< TransformGroup >
< ScaleTransform ScaleX ="1" ScaleY ="-1" ></ ScaleTransform >
< TranslateTransform Y ="1" ></ TranslateTransform >
</ TransformGroup >
</ VisualBrush.RelativeTransform >
</ VisualBrush >
</ Rectangle.Fill >
</ Rectangle >
</ StackPanel >
本来想搞个demo下载的,不知道怎么添加进来,悲剧。。。
效果图: