我正在尝试找出如何阻止LinearGradientBrush重复我正在绘制的形状。例如,我创建了高度为50的渐变,但接下来我绘制了高度为150的矩形。在这种情况下,梯度会重复三次。但我只想画第一个渐变,其余的矩形什么都不画。似乎WPF中的GradientBrush支持SpreadMethod(http://msdn.microsoft.com/en-us/library/system.windows.media.gradientbrush.spreadmethod.aspx)来实现这一目的,但是WinForms也存在吗?
发布于 2010-11-17 07:47:38
Paul,我认为最简单的方法可能是用同样的方法创建填充,但只使用50像素的矩形绘制。如果需要用特定颜色填充其他100个像素,则首先使用该颜色进行实心填充。
或者,您可以尝试在渐变填充中设置一个混合(LinearGradientbrush::SetBlend),但这似乎需要花费大量精力才能达到相同的效果。
https://stackoverflow.com/questions/1415824
复制相似问题