如何使用VS 2012在Metro风格应用中更改按钮的背景图像? 在Windows窗体中,按钮具有可以设置的BackgroundImage属性。 此功能是否适用于Metro Style应用程序?
在Windows窗体中,我可以在C#中执行以下操作:
btnImage.BackgroundImage = System.Drawing.Image.FromFile(“... \ Pictures \ flower.png”);
如何以编程方式更改Metro Style应用程序中按钮的背景图像?
答案 0 :(得分:2)
非常简单,实际上,只需修改Button的XAML以包含结束标记,然后在其间删除图像控件,如下所示:
<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
<Button HorizontalAlignment="Left" Margin="532,285,0,0" VerticalAlignment="Top" Height="135" Width="283">
<Image Source="Assets/Logo.png" />
</Button>
</Grid>
在上面的代码片段中,我将图像源指向Logo.png文件,该文件是C#/ XAML应用程序内置模板的一部分。
另一种方法是在Blend for Visual Studio中打开项目,将图像从Assets选项卡拖到设计图面上(确保在Objects和Timeline窗格中选中了所需的容器),然后右键 - 单击图像并选择Make into Control ...,然后选择Button控件。
此技术的唯一缺点是您没有获得内置Button控件具有的默认VisualStates。相反,Blend使用空的VisualStates为您定义样式,您可以根据需要设置样式。
希望有所帮助。