• 全部
  • C#综合技术
  • C#互联网桌面应用
  • AppLauncher
  • WinForm&WPF
  • C#开发新技术
  • 问答

有关addrange的问题,很奇怪

ghosthjt 2004-11-01 05:24:47
这样的代码错在哪里:

lvwRes=new ListView();
ColumnHeader[] tmpCols=null;
for (int i =0;i<lvwIn.Columns.Count;i++)
{
if (i ==0)
tmpCols=new ColumnHeader[1];
else
tmpCols=(ColumnHeader[])Fun.Resize(tmpCols,i+1);
tmpCols[i]=lvwIn.Columns[i];
}
lvwRes.Columns.AddRange(tmpCols); <---这步发生如下错误:

未处理的"System.ArgumentException"出现在system.windows.forms.dll 中
其它信息: 不能在多处添加或插入"入库编号".必须首先将其从当前位置移除或者将其克隆

但关键是:lvwRes都是刚刚new出来的,哪里可能在多处添加呢??

...全文
72 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zhy0101 2004-11-01
不能直接添加一个与已知表关联的列,必须创建列的副本或者列不属于某个表,才能添加。添加的只能是不属于任何表的列
回复
ghosthjt 2004-11-01
不知道是不是.net本身的BUG
因为不管从哪里看,我的代码感觉都没有问题啊!
回复
ghosthjt 2004-11-01
不可能啊,tmpCols的{length=8}
表明是有值在里面的。
回复
xum1983 2004-11-01
监视一下tmpCols,我感觉这个好像是未定义的值;
回复
ghosthjt 2004-11-01
UP者都有分
回复
ghosthjt 2004-11-01
自己UP,C#里人怎么这么少啊??
回复
相关推荐
发帖
C#
创建于2007-09-28

10.5w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2004-11-01 05:24
社区公告

让您成为最强悍的C#开发者