c# 高手帮帮忙

来源:百度知道 编辑:UC知道 时间:2024/06/23 03:20:52
ArrayList.Remove(TerrView.SelectedNode.Tag);
为什么移除不掉呢? Tag的值在ArrayList里是有的啊
知道原因了,同样都是2741 ,在赋值的时候是int型的,而移除的时候是object的与它匹配。必须要强转一下。记住了!

用RemoveAt而不要用Remove
因为Remove(object o) 移除的是o这个引用(可以理解为指针)代表的那个对象, 两个对象的值相同并不代表他们是同一个对象。

已经是selectednode了,就不需要tag了吧,直接selectednode试试

你的Tag值是什么啊,你要把节点信息存入Tag中才可以删除呢

Remove需要的参数是索引,而tag是Object的对象,是存储对象相关信息的.你应该用索引来访问并移除

代码片段太少
你在后面还进行了什么操作?
有没有重新绑定数据之类的操作
如果有的话
建议仔细检查
或者贴代码出来帮你验证

Tag是Object把它类型转一下。