ユーザーコントロールがあります。webcontrol.ascx
<div runat="server" id="abc"></div>
webcontrol.ascx.csには、クラス名を追加するメソッドがあります
public void ABCmethod(){ abc.Attributes["class"] = "className" };
default.aspx で宣言的に作成すると<uc:WebControl runat="server" id=wc1" />
、この ABCmethod は例外をスローしません。
しかし、プログラムで作成したとき、
protected void Page_Load(object sender, EventArgs e)
{
WebControl wc1 = new WebControl();
wc1.ABCmethod();
}
これはエラーをスローします。abc は、オブジェクトのインスタンスに設定されていないオブジェクト参照であると言います。