2012-07-18 138 views
0

我不知道为什么我得到这个错误。 如何动态设置控件的错误提供程序?索引超出了数组的范围

if (errorList.Count == 0) 
     { 
      return true; 
     } 
     else 
     { 
      foreach (ErrorEntity ee in errorList) 
      { 
       if (ee.InError) 
       { 
        Control[] ctl = this.Controls.Find(ee.FieldName, true); 
        if (ctl != null) 
        { 
         errorProvider.SetError(ctl[0], ee.ErrorMessage); 
        } 
       } 
      } 
     } 

回答

0

我的猜测是,

this.Controls.Find(ee.FieldName, true); 

将返回一个空的集合,而不是空。 因此,当你检查为空,你也应该检查空(即:计数== 0)

+0

是的,这是它...谢谢。 – 2012-07-18 19:42:34