请教treeview的结点删除后,要把结点的TAG属性对应的对象一起删掉,该怎么做?对象不知道类型,急,谢谢 我现在每一节点的TAG存储了一个对象用户点删除的时候,我不光要删掉这个结点,同时要把trv1.SelectedNode.Tag这个对象删除,该怎么办?trv1.SelectedNode.Tag=NULL,没有删掉对象,怎么办呢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 MessageBox.Show(Body.Paras.Count.ToString()); if (trv1.SelectedNode == null) return; if (MessageBox.Show("确定删除?") == DialogResult.Cancel) return; if (trv1.SelectedNode.Tag != null) { trv1.SelectedNode.Tag = null; trv1.SelectedNode.Remove(); } MessageBox.Show(Body.Paras.Count.ToString());现在这样子SHOW出来的对象个数还是一样,没有删掉,该怎么办啊我想删掉结点的同时把对象一起删掉 你的每一节点的TAG存储的是什么对象?是你的Body.Paras[i] ??假设你的Body.Paras[i]的类型是 ClassParas;MessageBox.Show(Body.Paras.Count.ToString()); if (trv1.SelectedNode == null) return; if (MessageBox.Show("确定删除?") == DialogResult.Cancel) return; if (trv1.SelectedNode.Tag != null) { ClassParas t= (ClassParas)trv1.SelectedNode.Tag Body.Paras.Remove(t); trv1.SelectedNode.Remove(); } MessageBox.Show(Body.Paras.Count.ToString()); Body.Paras是什么?是一个list嘛?那很容易解决啊,只要把trv1.SelectedNode.Tag转化成所要的类型然后remove就行了Body.Paras.Remove((ClassName)trv1.SelectedNode.Tag); ((IList)(Body.Paras)).Remove(trv1.SelectedNode.Tag); 解释解释这段代码结果为什么是x=1,,y=2 我最近用C#做一个串口调试助手,但只能发送不能接收,请各位大侠帮我看看接收代码有什么错误?谢谢 String和string菜鸟问题 DataGridView读取大数据的问题 请教大伙,C/S程序如何更好的保护数据服务器安全(Sql Server) 求教高手“关于将当前页添加到收藏夹的代码编写方法”! 使用listbox的困惑,请求高手指点! 绘制投影效果的字体 高手请进,在IIS中,取得FTP站点的序号的代码,还有没有其它的方法? 如何抓取指定控件的屏幕显示? 这种方法可取吗 菜鸟高分求解关于属性和索引器的用法,贴上自己的小程序
if (trv1.SelectedNode == null)
return;
if (MessageBox.Show("确定删除?") == DialogResult.Cancel)
return;
if (trv1.SelectedNode.Tag != null)
{
trv1.SelectedNode.Tag = null;
trv1.SelectedNode.Remove();
}
MessageBox.Show(Body.Paras.Count.ToString());现在这样子SHOW出来的对象个数还是一样,没有删掉,该怎么办啊
我想删掉结点的同时把对象一起删掉
假设你的Body.Paras[i]的类型是 ClassParas;
MessageBox.Show(Body.Paras.Count.ToString());
if (trv1.SelectedNode == null)
return;
if (MessageBox.Show("确定删除?") == DialogResult.Cancel)
return;
if (trv1.SelectedNode.Tag != null)
{
ClassParas t= (ClassParas)trv1.SelectedNode.Tag
Body.Paras.Remove(t);
trv1.SelectedNode.Remove();
}
MessageBox.Show(Body.Paras.Count.ToString());
那很容易解决啊,只要把trv1.SelectedNode.Tag转化成所要的类型然后remove就行了
Body.Paras.Remove((ClassName)trv1.SelectedNode.Tag);