1

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

4

1 回答 1

2

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

或者,您可以尝试在渐变填充中设置混合 (LinearGradientbrush::SetBlend),但这似乎需要付出很多努力才能达到相同的效果。

于 2010-11-16T23:47:37.757 回答