1using System;
2using System.Collections.Generic;
3using System.ComponentModel;
4using System.Data;
5using System.Drawing;
6using System.Linq;
7using System.Text;
8using System.Windows.Forms;
9
10namespace MyForms
11{
12 public partial class MyListFrom : Form
13 {
14 public MyListFrom()
15 {
16 InitializeComponent();
17 }
18
19 /// <summary>
20 /// 在窗体的加载事件里写对控件的初始化以及限定
21 /// </summary>
22 /// <param name="sender"></param>
23 /// <param name="e"></param>
24 private void MyListFrom_Load(object sender, EventArgs e)
25 {
26 //下拉框内容设定为不可改变
27 cmbType.DropDownStyle = ComboBoxStyle.DropDownList;
28 //给下拉框添加元素
29 cmbType.Items.Add("-=请选择显示的样式=-");
30 cmbType.Items.Add("详细信息");
31 cmbType.Items.Add("平铺");
32 cmbType.Items.Add("简易显示");
33 cmbType.SelectedIndex = 0; //默认选中第一个项
34 //设定ListView控件的右键关联菜单
35 lvwMyList.ContextMenuStrip = contextMenuStrip1;
36 lvwMyList.View = View.Details; //设定ListView控件的默认显示方法
37 lvwMyList.SmallImageList = imlShowHead; //指定并关联ListView控件小图标对应的图片存储控件
38 lvwMyList.LargeImageList = imlShowBigPic; //指定并关联ListView控件大图标对应的图片存储控件
39 lvwMyList.GridLines = true; //设定ListView控件是否显示网格线
40 lvwMyList.MultiSelect = false; //设定ListView控件是否可以多选
41 lvwMyList.FullRowSelect = true; //设定ListView控件是否可以一次选中整行
42 //给ListView控件添加列头
43 lvwMyList.Columns.Add("MyQQ号码",100); //100为列头的宽度
44 lvwMyList.Columns.Add("昵称");
45 lvwMyList.Columns.Add("年龄");
46 lvwMyList.Columns.Add("性别");
47 }
48
49 /// <summary>
50 /// 查询按钮的点击事件
51 /// </summary>
52 /// <param name="sender"></param>
53 /// <param name="e"></param>
54 private void btnSelect_Click(object sender, EventArgs e)
55 {
56 lvwMyList.Items.Clear(); //每次点击时,首先清空ListView内的所有项,不然每点一次会重复出现
57 ListViewItem lvl = new ListViewItem(); //创建一个ListViewItem对象,只有ListViewItem对象才能添加到ListView控件内
58 lvl.Text = "10000";
59 lvl.Tag = "标记1"; //设定Tag属性,此属性不显示,可以用来标记,比如主键
60 lvl.ImageIndex = 49; //设定对象对应的图像的索引
61 lvl.SubItems.AddRange(new string[]{"MoShin","保密","男"}); //添加子项
62 lvwMyList.Items.Add(lvl); //将对象装入ListView控件
63 //在添加一个对象
64 ListViewItem lvi = new ListViewItem();
65 lvi.Text = "10001";
66 lvi.Tag = "标记2";
67 lvi.ImageIndex = 89;
68 lvi.SubItems.AddRange(new string[] { "小乖", "19", "女" });
69 lvwMyList.Items.Add(lvi);
70 }
71
72 /// <summary>
73 /// 下拉框选中索引发生变化时触发该事件
74 /// </summary>
75 /// <param name="sender"></param>
76 /// <param name="e"></param>
77 private void cmbType_SelectedIndexChanged(object sender, EventArgs e)
78 {
79 string myType = cmbType.Text; //接受到选择的显示样式的值
80 //根据值去判断该使用那种显示方式
81 if (myType == "详细信息")
82 {
83 lvwMyList.View = View.Details;
84 }
85 else if(myType == "平铺")
86 {
87 lvwMyList.View = View.LargeIcon;
88 }
89 else if (myType == "简易显示")
90 {
91 lvwMyList.View = View.Tile;
92 }
93 }
94
95
96 //当鼠标右键关联菜单点击“查看”时触发该事件
97 private void 查看TagToolStripMenuItem_Click(object sender, EventArgs e)
98 {
99 //判断是否选择了ListView控件中显示的项
100 if (lvwMyList.SelectedItems.Count > 0)
101 {
102 MessageBox.Show(lvwMyList.SelectedItems[0].Tag.ToString(),"查询Tag",MessageBoxButtons.OK,MessageBoxIcon.Information);
103 }
104 else
105 {
106 MessageBox.Show("请选择一个用户!"); //如果没有选中,提示需要选中
107 }
108 }
109 }
110}
111
2using System.Collections.Generic;
3using System.ComponentModel;
4using System.Data;
5using System.Drawing;
6using System.Linq;
7using System.Text;
8using System.Windows.Forms;
9
10namespace MyForms
11{
12 public partial class MyListFrom : Form
13 {
14 public MyListFrom()
15 {
16 InitializeComponent();
17 }
18
19 /// <summary>
20 /// 在窗体的加载事件里写对控件的初始化以及限定
21 /// </summary>
22 /// <param name="sender"></param>
23 /// <param name="e"></param>
24 private void MyListFrom_Load(object sender, EventArgs e)
25 {
26 //下拉框内容设定为不可改变
27 cmbType.DropDownStyle = ComboBoxStyle.DropDownList;
28 //给下拉框添加元素
29 cmbType.Items.Add("-=请选择显示的样式=-");
30 cmbType.Items.Add("详细信息");
31 cmbType.Items.Add("平铺");
32 cmbType.Items.Add("简易显示");
33 cmbType.SelectedIndex = 0; //默认选中第一个项
34 //设定ListView控件的右键关联菜单
35 lvwMyList.ContextMenuStrip = contextMenuStrip1;
36 lvwMyList.View = View.Details; //设定ListView控件的默认显示方法
37 lvwMyList.SmallImageList = imlShowHead; //指定并关联ListView控件小图标对应的图片存储控件
38 lvwMyList.LargeImageList = imlShowBigPic; //指定并关联ListView控件大图标对应的图片存储控件
39 lvwMyList.GridLines = true; //设定ListView控件是否显示网格线
40 lvwMyList.MultiSelect = false; //设定ListView控件是否可以多选
41 lvwMyList.FullRowSelect = true; //设定ListView控件是否可以一次选中整行
42 //给ListView控件添加列头
43 lvwMyList.Columns.Add("MyQQ号码",100); //100为列头的宽度
44 lvwMyList.Columns.Add("昵称");
45 lvwMyList.Columns.Add("年龄");
46 lvwMyList.Columns.Add("性别");
47 }
48
49 /// <summary>
50 /// 查询按钮的点击事件
51 /// </summary>
52 /// <param name="sender"></param>
53 /// <param name="e"></param>
54 private void btnSelect_Click(object sender, EventArgs e)
55 {
56 lvwMyList.Items.Clear(); //每次点击时,首先清空ListView内的所有项,不然每点一次会重复出现
57 ListViewItem lvl = new ListViewItem(); //创建一个ListViewItem对象,只有ListViewItem对象才能添加到ListView控件内
58 lvl.Text = "10000";
59 lvl.Tag = "标记1"; //设定Tag属性,此属性不显示,可以用来标记,比如主键
60 lvl.ImageIndex = 49; //设定对象对应的图像的索引
61 lvl.SubItems.AddRange(new string[]{"MoShin","保密","男"}); //添加子项
62 lvwMyList.Items.Add(lvl); //将对象装入ListView控件
63 //在添加一个对象
64 ListViewItem lvi = new ListViewItem();
65 lvi.Text = "10001";
66 lvi.Tag = "标记2";
67 lvi.ImageIndex = 89;
68 lvi.SubItems.AddRange(new string[] { "小乖", "19", "女" });
69 lvwMyList.Items.Add(lvi);
70 }
71
72 /// <summary>
73 /// 下拉框选中索引发生变化时触发该事件
74 /// </summary>
75 /// <param name="sender"></param>
76 /// <param name="e"></param>
77 private void cmbType_SelectedIndexChanged(object sender, EventArgs e)
78 {
79 string myType = cmbType.Text; //接受到选择的显示样式的值
80 //根据值去判断该使用那种显示方式
81 if (myType == "详细信息")
82 {
83 lvwMyList.View = View.Details;
84 }
85 else if(myType == "平铺")
86 {
87 lvwMyList.View = View.LargeIcon;
88 }
89 else if (myType == "简易显示")
90 {
91 lvwMyList.View = View.Tile;
92 }
93 }
94
95
96 //当鼠标右键关联菜单点击“查看”时触发该事件
97 private void 查看TagToolStripMenuItem_Click(object sender, EventArgs e)
98 {
99 //判断是否选择了ListView控件中显示的项
100 if (lvwMyList.SelectedItems.Count > 0)
101 {
102 MessageBox.Show(lvwMyList.SelectedItems[0].Tag.ToString(),"查询Tag",MessageBoxButtons.OK,MessageBoxIcon.Information);
103 }
104 else
105 {
106 MessageBox.Show("请选择一个用户!"); //如果没有选中,提示需要选中
107 }
108 }
109 }
110}
111