以下是一个例子:
public MainForm()
{
InitializeComponent();
LinearGradientBrush brush = new LinearGradientBrush(new Rectangle(0,0,100,100),Color.Blue, Color.White,angle:0);
brush.WrapMode = WrapMode.Tile; // OK
brush.WrapMode = WrapMode.Clamp; // Causes Unhandled exception alert, offering break
}
在VS2008输出窗口中显示:
System.Drawing.dll中发生了'System.ArgumentException'类型的第一次机会异常 附加信息:参数无效。
(图片http://i.imgur.com/nM2oNm1.png)
这是在Windows 7上。
确认LinearGradientBrush.WrapMode接受WrapMode
“获取或设置WrapMode枚举,指示此包装模式 一个LinearGradientBrush“。
这个 https://msdn.microsoft.com/en-us/library/vstudio/system.drawing.drawing2d.wrapmode(v=vs.90).aspx
确认WrapMode.Clamp对渐变有效:
“Clamp纹理或渐变未平铺。”