2012-01-13 157 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,但如果您僅使用兩種顏色,簡單的屬性就足夠了。

我沒有代碼方便,但會嘗試找到它並稍後發佈更新。但上述應該讓你去。