2014-10-11 29 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