搜尋此網誌

2009年11月11日 星期三

Silverlight:在C#中改變Image の Source

以C#程式去改變一個Silverlight Image元件的Source屬性,這裡以兩張 png圖檔的變換來做範例。

首先請任意準備好兩張圖片檔案,各別取名為"enter.png"及"leave.png",在xaml檔案的<Grid>內加入以下敘述:

<Image x:Name="img" Source="leave.png" Width="100" Height="100"
  MouseEnter="enter" MouseLeave="leave">


為正常使用BitmapImage功能,在 cs檔開頭using部份加入以下敘述:

using System.Windows.Media.Imaging;

當滑鼠進入圖片範圍將會執行enter函式,離開圖片範圍則執行leave函式,兩個函式內容如下:

private void enter(object sender, MouseEventArgs e)
{
BitmapImage newImg =
       new BitmapImage(new Uri("enter.png", UriKind.Relative));
img.Source = newImg;
}

private void leave(object sender, MouseEventArgs e)
{
BitmapImage newImg =
       new BitmapImage(new Uri("leave.png", UriKind.Relative));
img.Source = newImg;
}


加入System.Windows.Media.Imaging後方可使用BitmapImage class,變換圖片的動作才能夠正常執行。

沒有留言:

張貼留言