2009-09-12 60 views
0

我想弄清楚如何停止LinearGradientBrush与我绘制的形状一起重复。所以,例如我创建了高度等于50的渐变,但接下来我绘制了高度等于150的矩形。在这种情况下,渐变将重复三次。但是我想只绘制第一个渐变,并为其余的矩形绘制任何东西。 似乎WPF中的GradientBrush支持SpreadMethod(http://msdn.microsoft.com/en-us/library/system.windows.media.gradientbrush.spreadmethod.aspx)用于此目的,但是对WinForms也有某种存在?停止LinearGradientBrush重复

回答

2

保罗,我认为最简单的方法可能是以相同的方式创建您的填充,但只能使用50像素的矩形进行绘制。如果您需要使用特定颜色填充其他100个像素,请先用该颜色进行实心填充。

另外,你可以尝试在你的渐变填充(LinearGradientbrush :: SetBlend)中设置一个混合,但这似乎是很多努力来实现相同的效果。