2012-04-11 54 views
2

在我的Windows Phone 7.1應用程序中,我有一個功能齊全的ListBox,它顯示來自Web服務的數據。在ListBox我能夠把圖像並結合圖像源以下xaml使用從Web服務返回的值:Windows Phone 7 - 來自URL的圖像顏色疊加

<Image Source="{Binding WebImageUrl}" Width="60" Height="60" /> 

這個偉大的工程。但現在我試圖用另一種顏色覆蓋圖像,並且要按照發布的here的SO問題進行操作。如果圖像明確說明,這也很有用。如果我嘗試綁定網址,它不起作用。

例如,代碼:

<Rectangle Fill="Red" Width="60" Height="60"> 
    <Rectangle.OpacityMask> 
    <ImageBrush ImageSource="http://someurl.com/repository/images/icon100.png"/> 
    </Rectangle.OpacityMask> 
</Rectangle> 

作品。但是,代碼:

<Rectangle Fill="Red" Width="60" Height="60"> 
    <Rectangle.OpacityMask> 
    <ImageBrush ImageSource="{Binding WebImageUrl}"/> 
    </Rectangle.OpacityMask> 
</Rectangle> 

沒有。代碼編譯文件,但Visual Studio引發解析錯誤。

有什麼辦法讓ImageBrush.ImageSource綁定到一個字符串?

任何想法將不勝感激。我一直在這一段時間沒有運氣。

乾杯, 佈雷特

+0

您是否在實際手機上測試了帶有多個圖像的列表框?直接綁定網址對於許多圖像來說是一個糟糕的主意。 UI凍結以下載數據。 – 2012-04-11 15:04:10

+0

@lukas:我確實有圖像下載工作。我在後臺線程上執行所有操作,然後在完成下載時綁定列表框。硬編碼的URL只是我知道的一個例子。我的問題是關於顏色疊加。爲什麼硬編碼的網址能夠正常工作,但綁定卻不行? – Brett 2012-04-11 15:06:29

回答

1

- 刪除 -

你原來的代碼似乎是工作的罰款對我來說,有一個字符串屬性,所以我看不出有什麼問題......

+0

這看起來很簡單,但我得到的錯誤:'ImageBrush'類型的值不能被添加到'UIElementCollection'類型的集合或字典中。有任何想法嗎? – Brett 2012-04-11 15:22:30

+0

Ops,它不是ImageBrush,它是Image ...現在修復它! – 2012-04-11 15:47:30

+0

嗯,它的工作原理:-)雖然這不是我想要的。我的原始代碼(使用硬編碼的uri)僅以純色覆蓋圖像的非透明區域。這是我的目標。你的例子(儘管很簡單)覆蓋整個廣場,不透明度爲0.5。我感謝您花時間儘管! – Brett 2012-04-11 15:57:02