2010-07-20 12 views
6

Mam pędzel, który koloruje tło nagłówka. Podoba mi się sposób, w jaki wygląda ten pędzel, ale chciałbym, aby zniknął w przezroczystym miejscu w dolnej trzeciej. Wszelkie pomysły, jak to zrobić?Liniowy pędzelek gradientowy WPF

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

Odpowiedz

20

nie jestem pewien, że można to zrobić przez pracę tylko na poziomie szczotki, jednak można zastosować OpacityMask do kontrolą:

<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

Właśnie tego szukałem! –

6

po prostu określ kolory jako ARGB (w tym alfa) w następujący sposób: #AARRGGBB. Następnie daj ostatniemu gradientowi zatrzymać wartość alfa 0 (całkowicie przezroczysta; w twoim przypadku # 0080A8CC). HTH.

+0

to nie będzie działać, ponieważ pożądanym kierunku nieprzejrzystości gradient nie jest tym samym, co kierunek gradientu koloru –

Powiązane problemy