使用未分配的局部变量'TargetControl'

时间:2014-05-05 22:55:22

标签: c# asp.net

在第3行显示错误。

下面的代码

if (this.Page.Master != null)
{
    Control TargetControl;
    if (this.Page.Master.FindControl(this.TargetControlID) != null)
    {
        return this.Page.Master.FindControl(this.TargetControlID);
    }
    return TargetControl;
}

2 个答案:

答案 0 :(得分:2)

将您的代码更改为:

return Page.Master.FindControl(TargetControlID);

如果找不到它,它将返回null,或者它将返回控件。

答案 1 :(得分:2)

  

使用未分配的局部变量'TargetControl'

您的错误是因为您在此处声明了一个变量:

Control TargetControl;

但永远不要给它赋值。在使用变量之前,必须为变量赋值。

快速解决方案是:

Control TargetControl = null;

..但是,这本身就没用了,你可以这样做:

return this.Page.Master.FindControl(this.TargetControlID);