C# Listview 控制項 加 button按鈕的實現

來源:互聯網
上載者:User

沒寫過幾篇部落格,就當練練手,記錄一下筆記,不喜勿噴。 

開始本文

本程式實現的效果是當滑鼠點擊控制項的一行,在所選行的末尾出現一個button按鈕,並為button按鈕添加響應事件。


1、工程準備。首先我們建立一個C#的表單應用程式,起名WFAListViewBtn。

2、控制項準備。給表單添加一個ListView控制項,這裡的ID就是預設的就好了。控制項的屬性需要一下3處修改:

View屬性改為Detail,FullRowSelect 屬性改為True,點擊Columns添加三列。

3、定義變數。這個變數就是關於Button控制項的,定義代碼如下:

private Button btn = new Button();

4、添加表單響應事件。雙擊表單,添加表單的初始載入函數,代碼如下:

 private void Form1_Load(object sender, EventArgs e)        {            ListViewItem[] lvs = new ListViewItem[3];            lvs[0] = new ListViewItem(new string[] { "行1列1", "行1列2", "" });            lvs[1] = new ListViewItem(new string[] { "行2列1", "行2列2", "" });            lvs[2] = new ListViewItem(new string[] { "行3列1", "行3列2", "" });            this.listView1.Items.AddRange(lvs);            btn.Visible = false;            btn.Text = "...";            btn.Click += this.button_Click;            this.listView1.Controls.Add(btn);            this.btn.Size = new Size(this.listView1.Items[0].SubItems[2].Bounds.Width,            this.listView1.Items[0].SubItems[2].Bounds.Height);        }
5、ListView點擊事件。雙擊listView控制項,添加SelectedIndexChanged響應事件,函數代碼如下:

 private void listView1_SelectedIndexChanged(object sender, EventArgs e)        {            if (this.listView1.SelectedItems.Count > 0)            {                this.btn.Location = new Point(this.listView1.SelectedItems[0].SubItems[2].Bounds.Left,                    this.listView1.SelectedItems[0].SubItems[2].Bounds.Top);                this.btn.Visible = true;            }        }


6、button按鈕響應事件。代碼如下:

 private void button_Click(object sender, EventArgs e)        {            MessageBox.Show(this.listView1.SelectedItems[0].SubItems[0].Text);        }

到此為止,代碼的準備功能就完成了,點擊運行,查看實現效果。如下圖:


點擊後面的button,顯示下圖


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.