大家好,现在做了一个带checkbox的treeview,可以多项选择,当选中checkbox的时候,
lblName.text  +='|'+ tNode.ID.ToString().Replace("'", "''").Trim();
当取消checkbox的时候,应该是这个意思:lblName.text  -='|'+ tNode.ID.ToString().Replace("'", "''").Trim();(去除checkbox的选中值),前者已经实现,但是后者系统提示string和string变量之间不能使用"-="去除字符串.请问应该如何实现,谢谢,在线等.代码如下#region  节点的选中
private void TreeView1_Check(object sender, Microsoft.Web.UI.WebControls.TreeViewClickEventArgs e)
{
  TreeNode tn = ((Microsoft.Web.UI.WebControls.TreeView)sender).GetNodeFromIndex(e.Node);
  this.lblID.Text  +='|'+ tn.ID.ToString();
  this.Label3.Text +='|'+ tn.Text;
  if(tn.Checked )
    {
      ChickChildNode(tn);
     }
  else
     {
       ChickChildNodeFalse(tn);
     }
}//子节点的选中
private void ChickChildNode(Microsoft.Web.UI.WebControls.TreeNode treeNode)
{
  foreach(Microsoft.Web.UI.WebControls.TreeNode tNode in treeNode.Nodes)
  {
     tNode.Checked=true;  
     ChickChildNode(tNode);
     this.lblID.Text  +='|'+ tNode.ID.ToString();
     this.Label3.Text +='|'+tNode.Text;
   }
}
    //子节点的不选中
private void ChickChildNodeFalse(Microsoft.Web.UI.WebControls.TreeNode treeNode)
{
  foreach(Microsoft.Web.UI.WebControls.TreeNode tNode in treeNode.Nodes)
    {
tNode.Checked=false;
ChickChildNodeFalse(tNode);
this.lblID.Text  -= '|'+ tNode.ID.ToString;
this.Label3.Text -= '|'+tNode.Text;
    }
}
#endregion

解决方案 »

  1.   

    你可以这样做,把你想存储的信息存放在临时单元里,比如HashTable
    在添加的时候添加进去,删除的时候从HashTable中删除,
    然后按顺序重组字符串
      

  2.   

    你可以这样做,把你想存储的信息存放在临时单元里,比如HashTable
    在添加的时候添加进去,删除的时候从HashTable中删除,
    然后按顺序重组字符串
    ----------〉〉
    Hashtable是无序的
    你可以放在List中
      

  3.   

    lblName.text  -='|'+ tNode.ID.ToString().Replace("'", "''").Trim();
    换成:
    lblName.text  =lblName.text.trim().replace('|'+ tNode.ID.ToString().Replace("'", "''").Trim(),"");
    这样就好了阿