ホーム | お問合せ
 TreeViewにアイコン表示

TreeViewの階層表示が出来たので階層ごとにアイコンを表示させましょう

TreeViewにアイコン表示

上図のように階層ごとにアイコンを表示させてみましょう

まずはアイコンの画像を作成しましょう
ソリューションエクスプローラーの Properties を展開し
中にある Resouces.resx をダブルクリックします

Resouces.resx を開く

上部「リソースの追加」の▼をクリックしメニューを展開し

リソースの追加

新しいイメージ - BMPイメージ を選び、「DomainImage」と名前をつけます

リソース名の入力

追加ボタンをクリックしてしばらく待つと、ペイントが起動し画像の編集状態になります

ペイントで画像作成

ここからはペイントでの作業になりますが、サイズは16×16のアイコン画像を作成します
ペイントで画像作成
これは例ですが、適当なアイコン画像を作成しましょう

ドメインアイコンイメージ作成

画像を保存してペイントを閉じると、このようにアイコン画像が登録されるので
同様にしてアドレスアイコンを作成しましょう

アドレスアイコン作成

二つのアイコン画像ができたら、MSDNを見てみましょう
「ImageListを関連付ける必要がある」とありますね

まずはFormのコンストラクタでImageListの関連付けを行います

public Form1()
{
    InitializeComponent();

    treeView1.ImageList = new ImageList();

続いてこのイメージリストに先ほど作成したアイコンを登録しましょう
ImageListへの登録方法はMSDNを参照するとImagesプロパティAddしてやれば良さそうです
後で使いやすいように「Domain」「Address」と名前をつけておきます

    treeView1.ImageList.Images.Add("Domain",
                                    Properties.Resources.DomainImage);
    treeView1.ImageList.Images.Add("Address",
                                    Properties.Resources.AddressImage);
}

これでアイコン表示の準備完了です。アイコンを表示させましょう!

// 見つからなければ新しく生成
parent = new TreeNode(domain);
parent.ImageKey = "Domain";
// その子供としてメールアドレスを追加
TreeNode child = new TreeNode(mailAddress);
child.ImageKey = "Address";

早速実行させましょう!

アイコン表示

だいぶ形になって来ましたね

続いて、同一アドレスが再登録されたときの処理などメールアドレスの管理を行いましょう
(作成中)

produced By ATTIC