如何在C#中创建光泽按钮?

has*_*shi 17 .net c# silverlight graphics gdi+

我想用GDI +或Silverlight用C#创建光泽按钮,任何想法或技巧如何创建一个有光泽的按钮?像下面图片的东西:

我更感兴趣的是GDI +解决方案.

http://i.stack.imgur.com/ZguQG.jpg

Ian*_*oyd 14

微软Appcompat Guy的Chris Jackson写了一篇关于.NET(即C#和GDI +)的文章.

 

在此输入图像描述
Windows窗体凝胶按钮:第一次修订

 

在此输入图像描述
Windows窗体凝胶按钮:第二次修订

 

在此输入图像描述
Windows窗体凝胶按钮 - 第三次修订

所有代码都在那里,并仔细考虑

  • 以高dpi缩放
  • 性能和位图缓存


Reb*_*ial 12

这里的例子:

本文演示了如何使用它WindowsVistaRenderer以及如何创建它...

我在按钮图上找到了不同的图层......

在按钮的北部绘制光泽效果.绿色代表几乎透明的颜色......

现在,我们绘制这些图层的顺序至关重要.那个顺序是:

  1. 外边界
  2. 按钮背景颜色(如果选中按钮)
  3. 有光泽的效果
  4. 边界
  5. 按钮填充光泽强调
  6. 内部边界
  7. 辉光
  8. 按钮的文字和图像......