2012-01-13 163 views
1

我目前看,实现了渐变效果有点像矩形http://pjnicholson.com/Fireworks/fillgradients.htm矩形渐变填充

rectangle fill

如果我妥协了一点,我可以用放射渐变接近这个......但是否有任何(而不是太痛苦)的方式来实现矩形效果?

+0

默认情况下,WP7上的渐变看起来很糟糕(我认为通过重写'banding'有一个修复方法),但是如果可以的话,您应该只使用一个图像 – 2012-01-13 08:05:45

+0

@willmel - 听起来您需要在Mango中启用32位颜色 - bitsperpixel = 32 - http://j2i.net/blogEngine/post/2011/11/04/Enable-32-bit-Color-if-Your-Application-Supports-It.aspx – Stuart 2012-01-13 08:26:29

回答

2

改为使用ImageBrush,并将此图像(或使用某种图像编辑器生成的类似图像)用于矩形的背景。

+0

同意 - 它没有声音太优雅了,但Silverlight不支持这种渐变风格。 – ColinE 2012-01-13 08:40:13

2

我和一位同事合作的一个解决方案是派生一个使用WriteableBitmap作为背景源的新面板。

该面板将为您提供制作WriteableBitmap所需的尺寸。使用任何你想要的算法,你都可以适当地填充它。在我们的例子中,我们需要一个径向或锥形渐变,但同样的概念适用。

此外,您可以在新控件上创建多个属性来指定渐变的颜色。我们根据需要调整了LinearGradientBrush,但如果您仅使用两种颜色,简单的属性就足够了。

我没有代码方便,但会尝试找到它并稍后发布更新。但上述应该让你去。