C#ListView详解(二)

来源:互联网 发布:spark sql 数据仓库 编辑:程序博客网 时间:2024/05/18 16:15

ListViewItem成员请看C#ListViewItem详解(一)
ListViewItem的DragDrop请看C#ListViewItem详解(三)

Demo1:ListView基本操作和Group使用。
Code:

        private void Demo1_Click(object sender, EventArgs e)        {            //用于计算加载用时,建议使用Button的Click事件来观察            Stopwatch sp = new Stopwatch();            sp.Start();            lvContainer.BeginUpdate();            //设置ListView的相关属性            //imageListSource(ImageList)只有一张图片            lvContainer.View = View.SmallIcon;            lvContainer.SmallImageList = imageListSource;            lvContainer.GridLines = true;            lvContainer.FullRowSelect = true;            lvContainer.MultiSelect = false;            lvContainer.ShowGroups = true;  //显示分组            lvContainer.Alignment = ListViewAlignment.Top;     //ListViewItem排序规则,进行分组后建议使用top            //创建ListViewGroup            ListViewGroup listOdd = new ListViewGroup();            listOdd.Name = "奇数项";            listOdd.HeaderAlignment = HorizontalAlignment.Center;   //文本在列头居中            ListViewGroup listEven = new ListViewGroup();            listEven.Name = "偶数项";            listEven.HeaderAlignment = HorizontalAlignment.Left;     //左侧对齐            //强分组加入到ListView            lvContainer.Groups.Add(listOdd);            lvContainer.Groups.Add(listEven);            ;            //加载ListViewItem            for (int i = 0; i < 10; i++)            {                ListViewItem item = new ListViewItem();                item.ImageIndex = 0;                item.Text = i.ToString();                //将ListViewItem加入到Grop中                if (i % 2 == 0)                {                    listEven.Items.Add(item);                }                else                 {                    listOdd.Items.Add(item);                }                lvContainer.Items.Add(item);            }            //测试不进行分组的ListViewItem效果            lvContainer.Items.Add(new ListViewItem() { Text = "11", ImageIndex = 0 });            lvContainer.EndUpdate();            sp.Stop();            Console.WriteLine(sp.Elapsed.ToString());                     }

Effect Picture
这里写图片描述

Demo2:View.Details
Code:

        private void btnDemo2_Click(object sender, EventArgs e)        {            lvContainer.BeginUpdate();            lvContainer.Clear();            lvContainer.View = View.Details;            lvContainer.CheckBoxes = true;            lvContainer.SmallImageList = imageListSource;            lvContainer.HeaderStyle = ColumnHeaderStyle.Nonclickable;            lvContainer.FullRowSelect = true;            //创建列            ColumnHeader columnHeader = new ColumnHeader();            columnHeader.Text = "选择框";            columnHeader.TextAlign = HorizontalAlignment.Center;            lvContainer.Columns.Add(columnHeader);            ColumnHeader columnOne = new ColumnHeader();            columnOne.Text = "Index";            columnOne.Width = 100;            columnOne.TextAlign = HorizontalAlignment.Center;            lvContainer.Columns.Add(columnOne);            ColumnHeader columnTwo = new ColumnHeader();            columnTwo.Text = "Value";            columnTwo.TextAlign = HorizontalAlignment.Center;            lvContainer.Columns.Add(columnTwo);            //设置显示行列之间的网格线            lvContainer.GridLines = true;            //加载项            for (int i = 0; i < 20; i++)            {                ListViewItem item = new ListViewItem();                item.ImageIndex = 0;                item.Text = i.ToString();                item.SubItems.Add(string.Format("索引是{0}",i));                item.SubItems.Add(string.Format("值是{0}",i+1));                lvContainer.Items.Add(item);            }            lvContainer.EndUpdate();        }

Effect Picture
这里写图片描述

原创粉丝点击