-3

Visual Studio 11 BetaのC#WinFormアプリに画像を追加したいと思います。したがって、「リソースの追加」+「既存のファイルから...」を使用して[リソース]タブ/画像にpngを追加しました(これは正常に機能し、タブに一覧表示されます)。

今、私はそれにアクセスしようとしました: Bitmap Image = new Bitmap(MyProject.Properties.Resources.MyImage);しかし、それは「リソース」に何も見つかりません。(リソースに対して取得できるオプションは、Culture、Equals、ReferenceEquals、およびResourceManagerのみです)また、[プロパティ]タブでイメージのビルドアクションを埋め込みリソースに設定しようとしました

ローカルパスを使用してpngを追加すると、魅力のように機能します。

私はそれを間違っていますか、それとも別の問題がありますか?(.NET Framework 4を使用しています)

4

1 に答える 1

0

アセンブリからロードしようとしている場合(ビルドアクション=埋め込みリソース)、次Streamのようにアセンブリからを読み取る必要があります。

using System.Reflection;
//...
var image = new Bitmap(
    Assembly.GetEntryAssembly().
        GetManifestResourceStream("MyProject.Properties.Resources.MyImage.png"));

/Properties/Resources/MyImage.pngこれは、ファイルがにあり、アセンブリのルート名前空間がであると想定していますMyProject

于 2012-11-27T09:02:08.367 に答える