1. ホーム
  2. c#

[解決済み】.NETでリソースを作成し使用する方法

2022-04-18 21:33:09

質問

プログラムの様々な部分で簡単に参照・使用できるリソースを作成するには?

具体的な問題としては、NotifyIconを持っていて、プログラムの状態によってそのアイコンを変えたいのです。よくある問題ですが、長い間悩んでいた問題です。

解決方法は?

さて、StackOverflow(もうこの場所大好き)あたりでいろいろ検索して、いろいろなポイントをかき集めてみたところ、ほとんどの問題はすでにこの段階を過ぎていました。しかし、私の問題に対する答えを見つけることができました。

リソースを作成する方法。

私の場合は、アイコンを作成したいと思います。どのようなデータをリソースとして追加する場合でも、同じようなプロセスです。

  • リソースを追加したいプロジェクトを右クリックします。ソリューションエクスプローラーで行います。リストから "Properties"オプションを選択します。
  • リソース("Resources")]タブをクリックします。
  • バーの上部にある最初のボタンで、追加したいリソースの種類を選択できます。文字列から始まるはずです。アイコンを追加したいので、それをクリックして、オプションのリストから"Icons"を選択します。
  • 次に、2つ目のボタン、"Add Resource"に移動します。新しいリソースを追加することもできますし、すでにアイコンが作られている場合はそれも追加することができます。どちらのオプションを選択しても、プロンプトに従ってください。
  • この時点で、新しく追加されたリソースをダブルクリックして編集することができます。なお、リソースはソリューションエクスプローラーにも表示されますので、そちらをダブルクリックしても同じように効果があります。

リソースの使用方法

さて、新しいリソースを手に入れたら、素敵なアイコンに変えたくてウズウズしてきましたね。どうすればいいんだろう?幸運なことに、C#はこれを非常に簡単にしてくれる。

という静的なクラスがあります。 Properties.Resources というように、すべてのリソースにアクセスできるようにするもので、私のコードは結局、次のように単純なものになりました。

paused = !paused;
if (paused)
    notifyIcon.Icon = Properties.Resources.RedIcon;
else
    notifyIcon.Icon = Properties.Resources.GreenIcon;

完了! 完了!やり方がわかれば、なんでも簡単なんですね。