在Visual Studio Express 2013中更改按钮样式

时间:2014-11-21 20:42:45

标签: windows-8 visual-studio-2013 customization visual-studio-express

我创建的应用程序中的按钮虽然设置了自定义图像,但仍然是Windows 7主题(圆形边框,颜色渐变等)。有没有办法将它们更改为更多Windows经典或窗口8外观?模板或任何可以下载的内容?

1 个答案:

答案 0 :(得分:0)

基本上,您只能使用Windows窗体按钮类提供的属性,其形状取决于您运行的环境(操作系统版本)。

但是,您仍然可以通过实现以Button类为基础的自定义CustomButton类来自定义按钮形状。在该类中,您必须覆盖绘制方法(可能还有其他方法)并使用传递的paint事件args图形对象来绘制您喜欢的形状。

public class ExampleCustomButton : Button
{
    protected override void OnPaintBackground(PaintEventArgs pevent)
    {
       using (Pen p  = new Pen(Color.Yellow))
       {
           pevent.Graphics.DrawEllipse(p,
               Left, Top, Width, Height); //for example
       }
    }

    protected override void OnPaint(PaintEventArgs pevent)
    {
       using (Pen p  = new Pen(Color.Yellow))
       {
           pevent.Graphics.DrawEllipse(p,
               Left, Top, Width, Height); //for example
       }
    }    
}

请不要忘记处理IDisposable Graphics对象。

祝你好运