プログラムでリソースを作って使う」でリソース(resx)ファイルを使った方法を紹介しました。このリソース(resx)ファイルはXMLファイルなので、メモ帳などのテキストエディタなどで良くも悪くも変更できてしまいます。今回は、リソースとしてアクセスはするが、外部からの変更は行わない「リソースDLL」を作成してみます。今回の「リソースDLL」と、この「リソースDLLを使うプログラム」2つのプロジェクトを作成します。リソースDLLは「クラスライブラリ」、リソースDLLを使うプログラムは「Windowsアプリケーション」で作成し、リソースDLLを参照するように設定をします。リソースDLLを作成するリソースDLL側のプロジェクトはクラスライブラリの最初のクラス"Class1.cs"というファイルがありますが、リソースのみで、この"Class1.cs"は使用しないので削除します。[新しい項目]から「リソースファイル」を選択します。リソースファイルを追加すると文字列リソースを作成・編集するためのグリッドが表示されます。リソースの準備このときにリソースのグリッドの上部に「アクセス修飾子(i):」という項目があり、最初は'Internal'になっています。アクセス修飾子のドロップダウンを開いて'Public'に変更しておきます。このグリッドにリソース(今回は文字列のみ)を追加します。中国語リソースを準備できたらこのDLLをビルドしておきます。リソースDLLを使うプログラムを作成する次に先ほど作成したリソースDLLを使ったプログラムのほうを作成します。下記のようなコードを準備します。}リソースのアクセス部分は、<リソースDLLの名前空間>.<リソースのクラス名>.<リソースの名前>となります(リソースの値をプロパティで取得する形になります)。Studioが生成するデフォルトの名前が同じだからで、正確には名前空間(namespace)になります。<リソースのクラス名>の部分はリソースDLLで作成したリソースファイルのファイル名と同じ名前で作られた「クラス名」です。<リソースの名前>はリソースDLLのグリッド表示部で追加した「名前」です(そのままプロパティ名になります)。※プロパティ名になる関係上、<リソースの名前>に'-'(ハイフン)は使えません。起動直後ドロップダウンリストで’English’を選択して[Change]ボタンを押したときドロップダウンリストで’日本語’を選択して[Change]ボタンを押したときドロップダウンリストで’中文’を選択して[Change]ボタンを押したとき三か国語の文字列リソースを表示できました。コレクションを操作する(IEnumerableインターフェース)今回は、IEnumerable<T>インターフェースの基本について書きます。その例外が起きないようにする必要性があります。Frameworkに'ArrayList'と呼ばれるクラスがあります。このクラスは「動的配列」と呼ばれ、要素を追加したり削除したりと操作が簡単にできるクラスです。Studioなどの統合開発環境)なしでプログラムを作ることができる。」とのことなので試してみました。サブスレッドからフォームの表示を行う(Invoke)C#でスレッドを生成して、処理を行うとその処理状態やデータなどをフォーム上に表示したくなります。