5

I am writing an application in WPF and I would like to have the top of the application fade from a color to Aero glass like the Office 2010 applications.

Really it will be fading the area just below the title bar from glass to a color. (I think that maybe a better way to describe it).

Brian ONeil
  • 4,229
  • 2
  • 23
  • 25

2 Answers2

8

I figured out how to get it to work. I set the entire window to have the aero glass effect on it using the native API's and then a create a LinearGradientBrush for my background of the window. In the brush I used the Alpha properties of the brush and set the stops to have the top of the window go from white/opaque to white/transparent all very close to the top of the window.

<Grid>
        <Grid.Background>
            <LinearGradientBrush StartPoint="1,0">
                <!-- This gradient stop is Fully transparent. -->
                <GradientStop Color="#00FFFFFF" Offset="0.0" />
                <!-- This gradient stop is fully opaque. -->
                <GradientStop Color="#FFFFFFFF" Offset="0.1" />
            </LinearGradientBrush>
        </Grid.Background>
</Grid>

I 1 up'd Mikko Rantanen's answer because I used the article to add the glass effect I didn't have the code handy and it was a good simple article.

Brian ONeil
  • 4,229
  • 2
  • 23
  • 25
1

This reminds me of the way Windows Explorer/Internet Explorer continues Aero glass effect behind the address field. So I'd guess that if there is an API for this kind of effect, it will be a native Vista API which you need to call through P/Invoke similar to extending the glass effect. WPF doesn't really have any methods to control the Vista specific Aero theme I believe.

Mikko Rantanen
  • 7,884
  • 2
  • 32
  • 47
  • Thanks for the article... I have done the extending glass into the application before and seen several examples, but creating a gradient with it is a different problem. – Brian ONeil May 22 '09 at 00:18