[リソース] ページ (プロジェクト デザイナー)

リソース デザイナーは、プロジェクトのリソース (文字列、イメージ、アイコン、オーディオ、その他のファイルなど) を管理するためのユーザー インターフェイス ツールです。

プロジェクト デザイナーの [リソース] ページは、リソースを 1 か所 (Resources.resx) に保管するリソース デザイナーのインスタンスをホストします。

リソース デザイナーは言語に依存しないため、Visual Studio のすべての言語のプロジェクトをサポートします。リソース デザイナーを使用してプロジェクトに追加した項目は、プロジェクトの Resources ディレクトリに配置されます。デザイナー情報は Resources.resx というファイルに格納され、リソースのコードは Resources.Designer.cs、Resources.Designer.vb、または Resources.Designer.jsl に格納されます。

また、リソース デザイナーを使用して、スタンドアロンの .resx ファイルを編集することもできます。たとえば、ソリューション エクスプローラーを使用してリソース ファイルを追加した場合、その設定は別個の .resx ファイルに保存され、プロジェクト デザイナーには表示されません。リソースの .resx ファイルをダブルクリックすると、そのリソース用のリソース デザイナーが別個に開きます。

ファイル ベースのリソースを編集するには、リソース デザイナーで目的のリソースをダブルクリックします。リソース デザイナーは、そのファイルの種類に対応する既定のエディターでファイルを開きます。対応するエディターが登録されていない場合は、ファイルの種類に対応する Windows の既定のアプリケーションでファイルが開かれます。ファイルの種類の関連付けを変更する場合は、「方法 : エディターとリソースの種類を関連付ける」を参照してください。

Visual C# の場合、リソース デザイナーは、厳密に型指定されたリソースをプロジェクトの既定の名前空間 (具体的には Resources.Designer.cs の ProjectName.Properties) に生成します。

Visual Basic の場合、リソース デザイナーは、厳密に型指定されたリソースを Resources.Designer.vb の My.Resources 名前空間に生成します。Visual Basic で My.Resources オブジェクトを使用してリソースにアクセスする方法の詳細については、「アプリケーション リソースへのアクセス」を参照してください。

厳密に型指定されたリソースは、コンパイル時に静的な読み取り専用 (Get) プロパティを持つクラスを作成して、リソースへのアクセスをカプセル化します。リソースは、ResourceManager クラスの GetString メソッドや GetObject メソッドを使用する代わりに、Get プロパティを使用して利用できます。厳密に型指定されたリソースにより、ローカライズ可能なアプリケーションの開発も簡単になります。厳密に型指定されたリソースについては、StronglyTypedResourceBuilder を参照してください。

リソースには、リソースがリンクされているか、埋め込まれているかを示す Persistence プロパティもあります。リンク リソースは、ファイルとしてプロジェクト内に格納されます。.resx ファイルは、ファイルへの相対パスを格納し、リソース データは、コンパイル時にアプリケーションのマニフェストに配置されます。埋め込みリソースの場合は、リソース データが直接 .resx ファイルに格納されます。

既定では、新しいリソースはすべて、埋め込みリソースではなくリンク リソースになります。埋め込みリソースを編集しようとすると、リンク リソースに変換してから編集するように求めるメッセージが表示されます。この場合、変換することをお勧めしますが、この操作はオプションです。詳細については、「リンク リソースと埋め込みリソース」を参照してください。

注意

次の手順で参照している Visual Studio ユーザー インターフェイス要素の一部は、お使いのコンピューターでは名前や場所が異なる場合があります。これらの要素は、使用する Visual Studio のエディションとその設定によって決まります。詳細については、「設定の操作」を参照してください。

[リソース] ページを表示するには、ソリューション エクスプローラーでプロジェクト ノードを選択し、[プロジェクト] メニューの [プロパティ] をクリックします。プロジェクト デザイナーが表示されたら、[リソース] タブをクリックします。

[リソース ビュー セレクター]

プロジェクトのリソースを種類ごとに表示するには、[リソース] ページの左上にある矢印をクリックし、ドロップダウン リストでリソースの種類を選択します。オプションには、[文字列][イメージ][アイコン][オーディオ][ファイル]、および [その他] があります。既定のビューは [文字列] です。次の一覧は、各種のビューについての説明です。

  • 文字列
    文字列リソースの [名前][値]、および [コメント] の各列があるグリッドに文字列を表示します。各リソースには、実行時に My.Resources を使用して String としてアクセスできます。このグリッドの列については、後の「設定グリッド」を参照してください。

  • [イメージ]
    .bmp、.jpg、.gif の各形式を含む、すべてのイメージ ファイルを表示します。これらのファイルは、実行時に Bitmap として公開されます。このカテゴリには、Metafile として公開される Windows メタファイルも含まれます。

  • [アイコン]
    Icon として公開されるアイコン (.ico) ファイルを表示します。

  • [オーディオ]
    .wav、.wma、.mp3 の各ファイルを含むサウンド ファイルを表示します。これらのファイルは、バイト配列として公開されます。オーディオ項目をダブルクリックすると、その項目が Windows Media Player で開かれて再生されます。

  • [ファイル]
    上のカテゴリに収まらないすべてのファイルを表示します。このビューの項目は、String として公開されるテキスト ファイル、またはバイト配列として公開されるバイナリ ファイルになります。

  • その他
    文字列のシリアル化をサポートするその他の種類 (Font、Enum、Color、Point など) を追加するための設定グリッドを表示します。このグリッドには、[名前][型][値][コメント] の 4 つの列があります。このグリッドの列については、後の「設定グリッド」を参照してください。

[リソースの追加]、[削除]、および [アクセス修飾子]

これらのコントロールでは、リソースを追加および削除できます。また、生成される My.Resources クラスのアクセス レベルも変更できます。

  • [リソースの追加]
    リソースを追加するには、ページ上部の [リソースの追加] ドロップダウン リストの項目を選択します。オプションには、[既存のファイルの追加][新しい文字列の追加][新しいイメージ] (PNG、BMP、GIF、JPEG、または TIFF の各形式)、[新しいアイコンの追加]、および [新しいテキスト ファイルの追加] があります。

  • [削除]
    既存のリソースを削除するには、設定グリッド (後述) でリソースを選択し、[削除] をクリックします。

  • [アクセス修飾子]
    このオプションは、プロジェクトに追加したリソース ファイルのリソース デザイナーおよび既定のリソース デザイナー (Resources.resx) で使用できます。

    このオプションは、Visual Studio が Resources.Designer.cs または Resources.Designer.vb に生成する My.Resources ヘルパー クラスのアクセス レベルを指定します。My.Resources クラスを使用すると、リソースにランタイム アクセスできます。

    Visual C# のプロジェクトでは、アクセス修飾子として [Internal][Public]、または [コード生成なし] を指定できます。

    Visual Basic のプロジェクトでは、アクセス修飾子として [Friend][Public]、または [コード生成なし] を指定できます。

    既定の設定は、[Internal] (C# の場合) または [Friend] (Visual Basic の場合) です。Visual Studio でヘルパー クラスを Internal または Friend として生成すると、実行可能 (.exe) アプリケーションは、クラス ライブラリ (.dll ファイル) に追加したリソースと設定にアクセスできなくなります。DLL からリソースと設定を共有する必要がある場合は、アクセス修飾子を [Public] に設定してください。

    ローカライズされたリソース ファイル (ProjectName.de-DE.resx など) については、アクセス修飾子を [コード生成なし] に設定して、アプリケーションが実行時に自動的に適切なローカライズ済みリソース ファイルにアクセスできるようにします。ローカライズされたリソースの詳細については、「方法 : リソース ファイルのローカライズ バージョンを作成する」を参照してください。アクセス修飾子 [コード生成なし] は、既定のリソース デザイナーでは使用できません。

設定グリッド

設定グリッドでは、文字列リソースの設定を構成できます。このグリッドは、[文字列] ビューと [その他] ビューにのみ表示されます。グリッドには、次の列があります。

  • [名前]
    このフィールドには、リソースの名前を入力します。

  • [型]
    文字列のシリアル化をサポートする種類を指定します (この列は、[その他] ビューのみに表示されます)。


  • このリソース設定に関連付ける値を指定します。たとえば、リソースが文字列の場合は、そのテキスト値をここに入力します。

  • コメント
    必要に応じて、文字列リソースを説明するコメントを入力します。これは、デザイン時のみ参照できます。

参照

処理手順

方法 : リソースを追加または削除する

方法 : 文字列リソースを追加または削除する

方法 : リソースを編集する

方法 : 文字列リソースを編集する

方法 : エディターとリソースの種類を関連付ける

方法 : 埋め込みリソースを作成する

方法 : リソースをインポートまたはエクスポートする

概念

リンク リソースと埋め込みリソース

アプリケーション リソースへのアクセス

その他の技術情報

アプリケーション リソースの管理