2014-10-11 28 views
1

索引超出范围的错误,当我添加一个用户控件到面板中,微软VS C#

项目之间的代码更改第一个项目的行为,它运行良好 我有一个字符串数组s[] = ...s.Count();此功能存在 当我添加一个控制到我的面板它会很好。

在其他项目

1)s.C并点击(Ctrl-Space键),它表明我只CopyToClone方法

这部分解决了蒂姆,加尼甚,和帕特里克说,通过添加using System.Linq;

2)当我尝试控制添加到面板与 panel.Controls.Add(Custom Control); 它显示我在一个消息框中的错误,它添加了 控制和程序继续没有问题

索引超出范围。必须为非负, 小于集合
参数名称的大小:指数

该插件的代码是不是在try-catch 我试图改变它的框架并没有改变任何东西 可能是什么问题,感谢阅读我的问题,并获得任何帮助。

+2

加''使用System.Linq;' – 2014-10-11 20:17:51

+1

也请确保你的目标是.NET 3.5或以上 – 2014-10-11 20:21:11

+0

好的非常感谢Tim和Ganesh为你快速重播,我将使用system.linq并且我使用.NET 3.5 – habibhassani 2014-10-11 20:23:16

回答

2

Count()是一种扩展方法,只有在引用它们所在的命名空间时才可用。这是因为扩展方法没有在你调用的类上定义,而是在外部的某个地方定义。 (因此得名“扩展”的方法)

您需要包括这在你的代码文件的顶部:

using System.Linq; 

虽然不如叫s.Length因为你的变量只是一个数组。

+0

非常感谢帕特里克为你快速重播并为你解释,我会尝试你所说的话 – habibhassani 2014-10-11 20:30:45