silverlight

MediaElementへのURL指定はクロスドメイン制約を受けるよ

<MediaElement Width="640" Height="480" AllowDrop="True" AutoPlay="True" Name="MediaObject" Source="http://localhost/media/waterbuss.wmv" MediaFailed="MediaFailedHander" /> とかやって、Silverlightをローカルファイルから実行する(普通VisualStudioからデバッグするのでそうなる)とAG_E_NETWORK_ERRORが出る。htmlとxapをHTTPサーバ上に置いてやって、URLから実行すれば再生されるます。</mediaelement>

MediaElementで相対パス指定ができないことがあった(再現したりしなかったりなのでうんこ療法)

<MediaElement Name="MediaObject" MediaFailed="MediaFailedHander" /> public MainPage() { InitializeComponent(); /**/ MediaObject.Source = new Uri("waterbuss.wmv", UriKind.Relative); MediaObject.Width = 320; MediaObject.Height = 240; /**/ } UriKind.Relativeと明示してやる。なんかうまく行く。うーん……</mediaelement>

Windowsのシステムサウンド(*.wav)をMediaElementで再生させようとしてハマった

全然再生できなくて困ったので、MediaFaild属性付けてエラーメッセージ拾ってみた。 <MediaElement Width="640" Height="480" AllowDrop="True" AutoPlay="True" Name="MediaObject" Source="/MediaElement;component/Bin/Debug/startup.wav" MediaFailed="MediaFailedHander" /> private void MediaFailedHander(object sender, ExceptionRoutedEventArgs e) …</mediaelement>

Compiled XAML(BAML)にならない

WPFだとBAMLになる(id:kageroh_:20090515:1242317466)んだけど、SilverlightだとLoose XAMLのままなのはなんでなのかなあ…… XBAPはどうなんだろうか。と言うか、XAP(ただのzip archive。中身はAppManifest.xamlと*.dll)じゃなくて、BAMLにした、プログラムな…