指数数组的边界之外

时间:2012-07-18 19:11:02

标签: dynamic controls

我不确定为什么会收到此错误。 如何为控件动态设置错误提供程序?

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);
                    }
                }
            }
        }

1 个答案:

答案 0 :(得分:0)

我猜是

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

返回一个空集合,而不是null。 因此,当您检查null时,您还应检查为空(即:Count == 0)