如何为所有州的Metro应用程序设置自定义按钮背景

时间:2012-07-05 14:55:57

标签: windows windows-8 windows-runtime windows-store-apps winrt-xaml

我想将自己的位图用于Metro风格的Windows 8应用程序的按钮。我可以将按钮的背景画笔设置为我自己的ImageBrush,除了悬停和按下状态外,它可以正常工作。我无法弄清楚如何为它们设置位图。有谁知道怎么做?

感谢。

1 个答案:

答案 0 :(得分:1)

WinRT XAML Toolkit有一个ImageButton控件,允许为所有状态定义图像,如果这是你需要的。您还可以在Generic.xaml中检查其默认模板,以查看它如何使用基于多个重叠图像控件的位图(例如,检查PART_HoverStateImage)和控制这些图像控件的不透明度的视觉状态。 如果你很懒 - 你也可以只使用两个位图,并使用覆盖在IdleStateImageSource定义的位图顶部的PressedStateImageSource定义的半透明位图来显示悬停状态。或者你可以完全懒惰,只使用一个位图进行空闲状态,让控制器通过将GeneratePressedState和GenerateHoverState设置为true来生成其他两个状态的位图 - 通过用一些基本图像“照亮”空闲状态图像来生成这些位图处理。 Toolkit还有一个示例应用程序,其中的页面以多种方式演示了ImageButton控件的使用。