2010-07-20 90 views
6

我有一個畫筆,它爲一個標題的背景着色。我喜歡畫筆的樣子,但希望它能在最後三分之一時變得透明。任何想法如何做到這一點?線性漸變畫筆淡入淡出WPF

<LinearGradientBrush 
    x:Key="HeaderBackgroundBrush" 
    EndPoint=".5,1" 
    StartPoint="1,0"> 
    <GradientStop Color="#006699" Offset="1"/> 
    <GradientStop Color="#80A8CC" Offset="0.5"/> 
</LinearGradientBrush> 

回答

20

我不知道,你可以只刷一級工作做,但你可以申請一個OpacityMask到您的控制:

<LinearGradientBrush 
    x:Key="HeaderBackgroundOpacityMask" 
    StartPoint="0,0" 
    EndPoint="0,1"> 
    <GradientStop Color="#FFFFFFFF" Offset="0"/> 
    <GradientStop Color="#FFFFFFFF" Offset="0.667"/> 
    <GradientStop Color="#00FFFFFF" Offset="1"/> 
</LinearGradientBrush> 

... 
<Border Background="{StaticResource HeaderBackgroundBrush}" 
     OpacityMask="{StaticResource HeaderBackgroundOpacityMask}"> 
+0

這就是我一直在尋找的感謝! – 2010-07-21 15:59:10

6

只需將顏色指定爲ARGB(包括alpha),如下所示:#AARRGGBB。然後給你的最後一個漸變停止一個0的alpha值(完全透明;在你的情況#0080A8CC)。 HTH。

+0

這是行不通的,因爲透明度的期望方向漸變不同於顏色漸變的方向 – 2010-07-20 21:37:21