atelier:mitsuba

i love UI/UX, Blend, XAML, Behavior, P5, oF, Web, Tangible Bits and Physical computing. なにかあればお気軽にご連絡ください。atelier@c-mitsuba.com

その5:コードからImageのSourceを変更する

Windows 8 Developer Previewなので正式版とは異なる場合があります。
また、Windows Updateが走るときもあるため、エントリ執筆現在の情報をもとにかいています。

従来のSilverlightではImageコントロールのSourceプロパティはUri型でした。
そのため以下のようなコードで設定できます。

Uri imageurl = new Uri(item.ImageUrl);
ImageView.Source = imageurl;

しかし、MetroStyleAppsではImage.SourceはWindows.UI.Xaml.Media.ImageSource型になります。
これはDependencyObjectで上のようにUriを指定することができません。
そのため、ImageのSourceをStringから指定したい場合、コードでは以下のように記述します。

Uri imageurl = new Uri(item.ImageUrl);
ImageSource imagesrc = new BitmapImage(imageurl);
ImageView.Source = imagesrc;

ちょこちょことSLと違うところがあって、変なとこではまります><