winfrom如何在listview中添加控件

/ [随笔分类]WinForm知识 / 没有评论 / 165 浏览
        private Button btn = new Button();
        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);
    }
    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;
        }
    }
    private void button_Click(object sender, EventArgs e)
    {
        MessageBox.Show(this.listView1.SelectedItems[0].SubItems[0].Text);
    }</pre>

在我们设置用listview的时候,经常用到要动态地添加控件,这里是个很好的解决办法

http://p.blog.csdn.net/images/p_blog_csdn_net/wangyu065/EntryImages/20091014/gd.jpg

代码转载自http://bbs.csdn.net/topics/320091790

        </div>