2010-12-08 9 views
0

私はすでにこれをしなかった:WPFを使用して画像を追加する方法を教えてもらえますか?

 

var uriSource = new Uri(@"/WpfApplication1;component/Untitled.png", UriKind.Relative); 
image1.Source = new BitmapImage(uriSource); 
 

私の名前空間がWpfApplication1は私のイメージでは、プロジェクトのメインフォルダにある、あります。 それでも動作しません。私は間違って何をしていますか? 既にリソースに設定されています。 Height = 'image.Source.Height'が 'System.IO.DirectoryNotFoundException'型の例外をスローしました メタデータ= '(image.Source).Metadata'が 'System'型の例外をスローしました.NotSupportedException '

+0

画像がsilverlightアプリケーションの場合、名前空間を削除しようとすることができます。 – ASpirin

+0

何をASpririn ?? – Seva

+0

image1用にXAMLを投稿できますか?取得したエラーメッセージと投稿したコードが一致していないようです。たぶん問題はXAMLにあります。 – Stewbob

答えて

0

くそ、それはSilverlightと同じです。しかし、これを行うためのpngファイルはサポートしていません。 こうして私はどのように仕事をしたのですか?ただ、JPGイメージに変更:

 

Image image = new Image(); 
image.Width = 50; 
image.Height = 50; 
image.Source = new BitmapImage(new Uri("/soccer.jpg", UriKind.Relative)); 

mainCanvas.Children.Add(image); 
 
+0

PNGファイルの読み込みはサポートされていませんか? – VVS

+0

WPFはpngファイルを完全にサポートしています。アルファチャンネル機能のため、私は自分のアプリケーションでpngファイルしか使用しません。 WPFはこれらのファイルに問題はありません。 – Stewbob

+0

おい、私の酒場を降りてはいけない。私はちょうどpngとjpgでテストしました。これはjpgでのみ動作します! このコードでのみ、pngはサポートされていません。 – Seva

3

' Untitled.png 'のビルドアクションプロパティが'リソース 'に設定されていることを確認してください。 ソリューションエクスプローラでファイルをクリックし、プロパティダイアログを表示して、ビルドアクションプロパティを変更します。

Dim bi As New BitmapImage() 
bi.BeginInit() 
bi.UriSource = New Uri("/WpfApplication1;component/Untitled.png", UriKind.Relative) 
bi.EndInit() 
+0

それでも動作しません。私は自分の質問を編集しました。どうぞご覧ください。 – Seva

1

BitmapImage bmi = new BitmapImage(new Uri(r[0].ToString(), UriKind.Relative)); 

image1.Source = bmi; // location + filename 

仕事をしていますか?あなたのXAMLがこれと似ていると仮定します。

<Image x:Name="image1" HorizontalAlignment="Left" Width="175" Stretch="Fill" Margin="373.428,8,0,5.059"> 
    <Image.BindingGroup> 
     <BindingGroup/> 
    </Image.BindingGroup> 
</Image> 

私はCanvas/Layoutの中にImageコントロールを追加しました。 (ちょうど野生の推測を持っている)

関連する問題