我现在有两个listview 
lvGroup lvMember问题:怎么才能 点击lvGroup中的某项 在lvMember中显示与之相关的子项
我这里有个方法,有错误,不过可以作为参考
..........
this.lvGroup.Items[0].Tag=dr["zbh"].ToString().Trim();
..........
this.lvMember.Items.Clear();
foreach(DataRow dr in ds.Tables["grp_xs"].Select("ZBH='"+this.lvGroup.SelectedItems[0].Tag.ToString().Trim()+"'"))
{
ListViewItem lvi4=new ListViewItem(new string[]{dr[6].ToString()});
this.lvMember.Items.Add(lvi4);
}

解决方案 »

  1.   

    //trythis.lvGroup.Items[0].Tag=dr["zbh"].ToString().Trim();
    ..........
    this.lvMember.Items.Clear();
    ds.Tables["grp_xs"].DefaultView.RowFilter="ZBH='"+this.lvGroup.SelectedItems[0].Tag.ToString().Trim()+"'");foreach(DataRowView dr in ds.Tables["grp_xs"].DefaultView)
    {
    ListViewItem lvi4=new ListViewItem(new string[]{dr[6].ToString()});
    this.lvMember.Items.Add(lvi4);
    }
      

  2.   

    //弄錯了,試一下這個吧this.lvGroup.Items[0].Tag=dr["zbh"].ToString().Trim();
    ..........
    this.lvMember.Items.Clear();
    ds.Tables["grp_xs"].DefaultView.RowFilter="ZBH='"+this.lvGroup.SelectedItems[0].Tag.ToString().Trim();foreach(DataRowView dr in ds.Tables["grp_xs"].DefaultView)
    {
    ListViewItem lvi4=new ListViewItem(new string[]{dr[6].ToString()});
    this.lvMember.Items.Add(lvi4);
    }
      

  3.   

    自定义一个UListItem类型,包含Text和Value属性,然后在ListView的Items的Add方法里添加UlistItem数据,再做其他的处理
      

  4.   

    先在前面加个判断 if(this.lvGroup.SelectedItems.Count<1) return; 
    这个保管好用,我们经理告诉我的