/**********************************************/
/*★ ListView の表示を切り替える 前田 稔 ★*/
/**********************************************/
using System;
using System.Drawing;
using System.Windows.Forms;
public class MyForm : Form
{
ListView listView1;
ImageList imageListSmall;
ImageList imageListLarge;
string[] Files =
{ "C:\\DATA\\Test\\Icon1.ico", "C:\\DATA\\Test\\Icon2.ico", "C:\\DATA\\Test\\Icon3.ico",
"C:\\DATA\\Test\\Icon4.ico", "C:\\DATA\\Test\\Icon5.ico" };
public MyForm()
{
InitializeComponent();
Load += new System.EventHandler(MyForm_Load);
}
private void InitializeComponent()
{
this.listView1 = new System.Windows.Forms.ListView();
this.SuspendLayout();
// listView1
this.listView1.Location = new System.Drawing.Point(12, 12);
this.listView1.Name = "listView1";
this.listView1.Size = new System.Drawing.Size(258, 232);
this.listView1.TabIndex = 0;
this.listView1.UseCompatibleStateImageBehavior = false;
this.listView1.View = System.Windows.Forms.View.List;
this.listView1.FullRowSelect = true;
this.listView1.GridLines = true;
this.listView1.View = View.Details;
this.listView1.MouseDown +=
new System.Windows.Forms.MouseEventHandler(this.listView1_MouseDown);
// MyForm
this.ClientSize = new System.Drawing.Size(282, 256);
this.Controls.Add(this.listView1);
this.Name = "MyForm";
this.ResumeLayout(false);
}
private void MyForm_Load(object sender, System.EventArgs e)
{
// 列(コラム)ヘッダの作成
ColumnHeader[] columnHead = new ColumnHeader[2];
for (int i = 0; i < 2; i++) columnHead[i] = new ColumnHeader();
columnHead[0].Text = "名前";
columnHead[0].Width = 100;
columnHead[1].Text = "色";
columnHead[1].Width = 80;
listView1.Columns.AddRange(columnHead);
// イメージの設定
imageListSmall = new ImageList();
for (int i = 0; i < Files.GetLength(0); i++)
{ imageListSmall.Images.Add(new Bitmap(Files[i])); }
listView1.SmallImageList = imageListSmall;
imageListLarge = new ImageList();
imageListLarge.ImageSize = new Size(64, 64);
for (int i = 0; i < Files.GetLength(0); i++)
{ imageListLarge.Images.Add(new Bitmap(Files[i])); }
listView1.LargeImageList = imageListLarge;
string[] item0 = { "バラ", "赤" };
listView1.Items.Add(new ListViewItem(item0));
string[] item1 = { "ゆり", "白" };
listView1.Items.Add(new ListViewItem(item1));
string[] item2 = { "ひまわり", "黄"};
listView1.Items.Add(new ListViewItem(item2));
string[] item3 = { "さくら", "桃" };
listView1.Items.Add(new ListViewItem(item3));
string[] item4 = { "コスモス", "桃" };
listView1.Items.Add(new ListViewItem(item4));
listView1.Items[0].ImageIndex = 0;
listView1.Items[1].ImageIndex = 1;
listView1.Items[2].ImageIndex = 2;
listView1.Items[3].ImageIndex = 3;
listView1.Items[4].ImageIndex = 4;
}
// マウスのクリック
private void listView1_MouseDown(object sender, MouseEventArgs e)
{
switch(listView1.View)
{ case View.Details:
listView1.View = View.LargeIcon;
Console.WriteLine("LargeIcon");
break;
case View.LargeIcon:
listView1.View = View.SmallIcon;
Console.WriteLine("SmallIcon");
break;
case View.SmallIcon:
listView1.View = View.List;
Console.WriteLine("List");
break;
case View.List:
listView1.View = View.Tile;
Console.WriteLine("Tile");
break;
default:
listView1.View = View.Details;
Console.WriteLine("Details");
break;
}
}
}
class form01
{
public static void Main()
{
MyForm mf = new MyForm();
Application.Run(mf);
}
}
|