1. 程式人生 > >製作帶複選框的ListView控制元件

製作帶複選框的ListView控制元件

實現效果:

  

知識運用

   ListView控制元件的GridLines  //設定是否在ListView控制元件中顯示網格線

  public bool GridLines{get;set}

  和CheckBoxes屬性  //設定listView控制元件中各資料項是否顯示覆選框

  public bool CheckBoxes{get;set}

  以及ListViewItem資料項的Checked屬性  //判斷是否選中此資料項中的複選框

  public bool Checked{get;set}

實現程式碼:

        private void Form1_Load(object sender, EventArgs e)
        {
            listView1.CheckBoxes = true;
            listView1.GridLines = true;
            listView1.View = View.Details;
            listView1.Columns.Add("檔名稱",180,HorizontalAlignment.Left);
            listView1.Columns.Add("修改日期",217,HorizontalAlignment.Left);
            foreach (string fileName in Directory.GetFiles("C:\\windows\\")) {
                FileInfo file = new FileInfo(fileName);
                ListViewItem OptionItem = new ListViewItem(file.Name);
                OptionItem.SubItems.Add(file.LastWriteTime.ToString());
                listView1.Items.Add(OptionItem);
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            foreach (ListViewItem lvi in listView1.Items) {
                if(lvi.Checked==false)
                    lvi.Checked = true;
                else
                    lvi.Checked = false;
            }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            listView1.Items.Clear();
        }