如题

解决方案 »

  1.   

    要求,点击的item不同,弹出的窗体不一样
      

  2.   

    你可以响应listview 的double_click的事件,
    然后获取到click的Item的值,根据不同的值,显示不同的窗体好了
      

  3.   

    楼上正解,
    补充一点,当弹出对话框,里面包含数据表里的数据时,要判断你的鼠标击的位置,确保其是在item上的.
      

  4.   

    但是如何才能实现如sundy26(一缕阳光)所说的“获取到click的item的值"呢
      

  5.   

    用listview的itemactivate事件即可实现 ,具体代码 你自己生成吧
      

  6.   

    ctimtide() ( ) 信誉:100  2005-03-09 20:27:00  得分: 0  
     
     
       但是如何才能实现如sundy26(一缕阳光)所说的“获取到click的item的值"呢
      
     
    ============================================================================因为你想实现点不同的Item弹不同的窗体出来,所以,Form1肯定要传参数过去。
    首先,定义一个全局的 ArrayList
    public ArrayList al = new ArrayList();把listview里所有元素的text都压到al里然后,在listview的listView_ItemActivate事件里,这么写:int i = this.listView1.SelectedIndices;
    switch(i)
    {
      case 1:
        Form2 objForm2 = new Form2(string al[this.listView1.SelectedIndices]);
        objForm2.Show();
        break;
      case 2:
        Form3 objForm3 = new Form3(string al[this.listView1.SelectedIndices]);
        objForm3.Show();
        break;
      default:
        break;
    }
    然后在Form2里这么写:public Form2(string From_Form1)
    {
    }
    Form3类似.
      

  7.   

    刚才的代码有点错误,应该是这样Form2 objForm2 = new Form2((string)al[this.listView1.SelectedIndices]);