我正在 WPF 中编写一个应用程序,我希望应用程序的顶部从一种颜色淡化为 Aero 玻璃,如 Office 2010 应用程序。
实际上,它会将标题栏下方的区域从玻璃淡化为一种颜色。(我认为这可能是描述它的更好方式)。
我正在 WPF 中编写一个应用程序,我希望应用程序的顶部从一种颜色淡化为 Aero 玻璃,如 Office 2010 应用程序。
实际上,它会将标题栏下方的区域从玻璃淡化为一种颜色。(我认为这可能是描述它的更好方式)。
我想出了如何让它工作。我使用原生 API 将整个窗口设置为具有航空玻璃效果,然后为我的窗口背景创建一个 LinearGradientBrush。在画笔中,我使用了画笔的 Alpha 属性并设置了停止点,以使窗口顶部从白色/不透明变为白色/透明,所有这些都非常靠近窗口的顶部。
<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>
我对 Mikko Rantanen 的回答加了 1 分,因为我使用这篇文章添加了玻璃效果,我没有方便的代码,这是一篇很好的简单文章。
这让我想起了 Windows Explorer/Internet Explorer 在地址字段后面延续 Aero 玻璃效果的方式。所以我猜如果有这种效果的API,它将是一个原生的Vista API,你需要通过P/Invoke调用它,类似于扩展玻璃效果。我相信 WPF 并没有任何方法来控制 Vista 特定的 Aero 主题。