2011-06-28 64 views
33

以下面的方式設置圖像的源屬性時,圖片取自/Images/down.png如何以編程方式設置圖像源

我該如何以編程方式做同樣的事情?

<Image x:Name="myImg" Source="/MyProject;component/Images/down.png" /> 

由於Image.Source屬性不是字符串類型,因此以下方法無效。

myImg.Source = "/MyProject;component/Images/down.png"; 
+1

可能重複:http://stackoverflow.com/questions/350027/setting-wpf-image-source-in-code –

+3

雖然Silverlight的和WPF在很多方面類似,我不會說這是重複的。特別是當涉及資源位置時。 –

回答

61

試試這個:

BitmapImage image = new BitmapImage(new Uri("/MyProject;component/Images/down.png", UriKind.Relative)); 
+0

哦,基本上,這是Uri類的轉換,這取決於字符串中指定的內容。不知道。 –

+5

然後: myImg.Source = image; 如果您指定絕對路徑,請記住將其設置爲UriKind.Absolute。 –

-2

用asp:圖像

<asp:Image id="Image1" runat="server" 
      AlternateText="Image text" 
      ImageAlign="left" 
      ImageUrl="images/image1.jpg"/> 

和代碼隱藏來改變圖像的URL

Image1.ImageUrl = "/MyProject;component/Images/down.png"; 
+1

請注意,該問題的標籤是Silverlight。我沒有在ASP中做任何事情。不過謝謝你的回覆。 –

-1

試試這個

PictureBox picture = new PictureBox 
     { 
      Name = "pictureBox", 
      Size = new Size(100, 50), 
      Location = new Point(14, 17), 
      Image = Image.FromFile(@"c:\Images\test.jpg"), 
      SizeMode = PictureBoxSizeMode.CenterImage 
     }; 
p.Controls.Add(picture); 
+1

解釋會使答案更有用。 – IvanH

8
myImg.Source = new BitmapImage(new Uri(@"component/Images/down.png", UriKind.RelativeOrAbsolute)); 

不要忘記將生成操作設置爲「內容」,並複製到輸出目錄爲「始終」。

2
{yourImageName.Source = new BitmapImage(new Uri("ms-appx:///Assets/LOGO.png"));} 

LOGO是指圖像

希望能幫助任何人。 :)

3

嘗試分配的形象,而不是這樣:

imgFavorito.Source = new BitmapImage(new Uri(base.BaseUri, @"/Assets/favorited.png")); 
相關問題