私はアプリケーションを開発していますが、clientbin フォルダーではなく、サーバーに配置されたフォルダーにあるイメージをロードします。私はこの BitmapImage bit = new BitmapImage(); のようなことをします。文字列パス = "c:/image.png"; bit.UriSource = new Uri(パス, UriKind.Absolute); identity.Source = ビット; しかし、それは機能しません。ありがとう
1819 次
3 に答える
1
試す:
Image.Source = New Imaging.BitmapImage(New Uri(" http://www.Pic.jpg ", UriKind.Absolute))
プロジェクトに含めたくない場合、または .xap が巨大になります。
于 2009-04-09T12:43:18.490 に答える
0
ビルの答えに追加します。xap ファイルの場所から派生した次のヘルパー メソッドを使用して、サーバー側のリソースを使用することもできます。
public static string GetUrlForResource(string resourcePage)
{
var webUrl = Application.Current.Host.Source.ToString();
//Get ClientBin Directory
var stub = webUrl.Substring(0, webUrl.LastIndexOf("/"));
//Get application root.
stub = stub.Substring(0, stub.LastIndexOf("/") + 1);
//Append the application root to the resource page.
webUrl = stub + resourcePage;
return webUrl;
}
ビルの答えのように使用するには、次を使用します。
Image.Source = new Imaging.BitmapImage(new Uri(GetUrlForResource("images/myimage.png"), UriKind.Absolute));
于 2017-01-04T16:15:44.510 に答える
0
Silverlight アプリケーションはサーバー上ではなくクライアント上で実行されるため、これまで試みてきたようにパスを参照すると、実際にはアプリケーションを実行しているクライアント マシン上のパスを指すことになります。ただし、Silverlight には、セキュリティ上の理由から、クライアントのディスクを読み書きする権限がありません。分離ストレージ機能は例外です。
したがって、あなたの選択肢は、Bill によって与えられた最初の回答、または実装がより複雑な WebService を試すことです。
イブ。
于 2009-04-09T16:04:02.070 に答える