2014-01-30 127 views
0

我有兩個Windows Phone項目。兩人都從一個URL,這是該填充獲取圖像相同的代碼圖像未加載圖像控制

<Image x:Name="imgThumb" Margin="0,-94,0,6" Width="90" Height="90" Source="{Binding Thumb}"/> 

我的代碼是這樣的:

string thumb = i["thumbnail"].ToString(); //fetch thumbnail from json object 
if (thumb == "") 
    item.Thumb = "\images\noimage.jpg"; 
else 
    item.Thumb = thumb; 

在這兩個項目中,當JSON返回一個URL圖像,圖片顯示沒有問題。但是,問題是當的JSON沒有URL。當發生這種情況時,我需要顯示圖像文件noimage.jpg。在第一個項目中,該「離線」圖像顯示,但在第二個項目中,它顯示空白圖像。我已經測試了它,並且Image控件的來源設置正確...但圖像無法顯示。

需要考慮的一些事項:將圖像放在兩個項目中的正確路徑中,並將它們設置爲內容。

任何幫助?

謝謝!

+0

我知道「如果(thumb ==」「)」有點奇怪,但我已經改爲「if(thumb.IsNullOrEmpty())」。 – Van

+0

通過說「測試它」,你的意思是調試? –

+0

是的多數民衆贊成在它! Source屬性設置正確。 – Van

回答

0

首先,源「\」不正確的斜槓。嘗試用另一個「/」=)

二。這是沒有必要的,但要減少一些代碼,嘗試使用圖像的這種來源:

Source="{Binding Thumb, TargetNullValue=/images/noimage.jpg}" 

所以,你可以將此代碼

if (thumb.IsNullOrEmpty()) 
    item.Thumb = "\images\noimage.jpg"; 
else 
    item.Thumb = thumb; 

改變這種

if (!thumb.IsNullOrEmpty()) 
    item.Thumb = thumb; 
+0

關於反斜線,實際上我使用'/'。我沒有使用CTRL + C,所以我在這裏重新編寫了代碼。 – Van

+0

有趣。好吧,這很奇怪。好的,但第二項建議呢?如果它不工作,那麼路徑或圖像出現問題。嘗試在任何地方創建圖像。 你確定,那個拇指真的是空的,可能有一些空間嗎?我經常使用string.IsNullOrWhiteSpace(thumb)。 –

+0

雖然沒有工作。我重新檢查了第100次,文件在那裏,我清理/重建他的解決方案,重新安裝了應用程序,它仍然無法工作。但另一方面,我在另一個項目上做了更正,並且像以前一樣工作。感謝TargetNullValue屬性,我不知道那個屬性! – Van