46

画像ソースを動的に設定する必要があります。画像がネットワーク上のどこかにあることに注意してください。ここに私のコードがあります

BitmapImage logo = new BitmapImage();
logo.BeginInit();
logo.UriSource = new Uri(@"pack://application:,,,\\myserver\\folder1\\Customer Data\\sample.png");
logo.EndInit(); // Getting the exception here
ImageViewer1.Source = logo;

例外:

URI プレフィックスが認識されません

4

5 に答える 5

77

上記の解決策はどれもうまくいきませんでした。しかし、これはしました:

myImage.Source = new BitmapImage(new Uri(@"/Images/foo.png", UriKind.Relative));
于 2013-12-09T20:37:30.610 に答える
71

1行だけ必要です:

ImageViewer1.Source = new BitmapImage(new Uri(@"\myserver\folder1\Customer Data\sample.png"));
于 2010-09-24T13:00:45.693 に答える
5

ここで使用しているパック構文は、ファイル システム内のルーズ ファイルではなく、アプリケーション内にリソースとして含まれるイメージ用です。

UriSource に実際のパスを渡したいだけです。

logo.UriSource = new Uri(@"\\myserver\folder1\Customer Data\sample.png");
于 2010-09-24T12:50:30.660 に答える
-3

あなたはすべて間違っています!なんで?必要なのは、このコードが機能することだけだからです。

(画像ビュー)/ C#Img is:your Image box

これを変更せずにそのままにします( "ms-appx:///)これはアプリ名ではなくコードです画像はプロジェクト内のフォルダであり、変更できます。dog.pngはフォルダ内のファイルであり、i私のフォルダ'Images'とファイル'dog.png'を実行します。したがって、uriは: "ms-appx:///Images/dog.png"と私のコード:


private void Button_Click(object sender, RoutedEventArgs e)
    {
         img.Source = new BitmapImage(new Uri("ms-appx:///Images/dog.png"));
    }
于 2013-01-30T18:51:49.273 に答える