在listview中双击一行弹出一个窗体并且各列的值赋值在窗体的相应控件上,并在listview中的一个字段不同项目时弹出不同的窗体。
如:在listview中students,grade,sex,age,number,当grade是freshman时双击弹出一个freshman窗体,且students,grade,sex,age,number的内容在freshman窗体中有相应控件显示内容,当grade是junior时双击弹出一个junior窗体······
 private void listView1_DoubleClick(object sender, EventArgs e)
        {        }
只知道是这个事件,里面不知怎么写。

解决方案 »

  1.   

    private void listView1_DoubleClick(object sender, EventArgs e)
    {
        if (listView1.SelectedItems.Count > 0)
        {
            ListViewItem li = listView1.SelectedItems[0];
            Dictionary<string, string> _list = new Dictionary<string, string>();
            fm.list.Add("students", li.SubItems["students"].Text);
            fm.list.Add("grade", li.SubItems["grade"].Text);
            ////继续添加sex,age,number
            if (li.SubItems["grade"].Text == "freshman")
            {
                freshman fm = new freshman();
                fm.list = _list;
                fm.Show(this);
            }
            if (li.SubItems["grade"].Text == "junior")
            {
                junior fm = new junior();
                fm.list = _list;
                fm.Show(this);
            }
        }
    }在freshman或者junior窗体中:
    public Dictionary<string, string> list;
    private void freshman_Load(object sender, EventArgs e)
    {
        if (list != null)
        {
            textbox1.Text = list["students"];
            //。。继续显示其他
        }
    }
      

  2.   

    一。获取如Freshman名,
    二。反射为窗体。但这个窗体名要一致
    三。调用
      

  3.   

    在里面 new 一个窗体就解决啦 具体看要求啦!
      

  4.   


     //用  MouseDoubleClick事件
         private void listView_vd_MouseDoubleClick(object sender, MouseEventArgs e)
        {
          ListViewItem item = this.listView_vd.GetItemAt(e.X, e.Y);
          //得到Item了 你应该知道怎么搞了吧
        }
      

  5.   

    楼主是不是要弹出修改的Form??可以加if(f.ShowDialog() == DialogResult.OK)
    的判断,弹出的Form中的按钮设置DialogResult为OK即可。其他参照1楼。基本上是Form间的数据传输问题。
      

  6.   

    fm.list.Add("students", li.SubItems["students"].Text);
            fm.list.Add("grade", li.SubItems["grade"].Text);
    这两句有问题吧,fm对象是在在定义freshman fm = new freshman();时才可以用的吧,怎么用在它之前了,还有fm.list = _list;那个list哪里来的?