2

Asp.NETアプリケーション(VS2008、Framework 2.0)があります。次のようなユーザーコントロールの1つにプロパティを設定しようとすると

myUserControl.SomeProperty = someValue;

取得しNullReferenceExceptionます。myUserControlデバッグしたところ、それがnullであることがわかりました。ユーザーコントロールハンドルがnullである可能性はどのようにありますか?これを修正するにはどうすればよいですか、またはこれを引き起こす原因を見つけるにはどうすればよいですか?

4

4 に答える 4

5

プロパティにアクセスしようとしている場所はどこですか? onInit にいる場合、コントロールはまだロードされていない可能性があります。

于 2008-08-27T14:38:02.573 に答える
5

コードのどこでこれを行おうとしていますか? ページ ライフサイクルの早い段階でコントロールにアクセスしようとしていて、まだインスタンス化されていない可能性があります。

于 2008-08-27T14:39:16.407 に答える
0

I was trying to set the property from markup on an outside user control. When I took the property to OnLoad, it worked.

于 2008-08-27T14:49:00.627 に答える
0

実行時に (ControlCollection.Add を使用して) UserControl を作成した場合は、ポストバック時にも作成する必要があります。

別のケースとして、UserControl が designer.cs ページと一致しない場合があります。

于 2008-08-27T14:41:16.387 に答える