2008-08-27 10 views
2

J'ai une application Asp.NET (VS2008, Framework 2.0). Lorsque je tente de définir une propriété sur l'un des contrôles utilisateur commeNullReferenceException sur le handle de contrôle utilisateur

myUserControl.SomeProperty = someValue; 

je reçois un NullReferenceException. Quand je débogue, j'ai découvert que myUserControl est null. Comment est-il possible qu'un handle de contrôle utilisateur soit nul? Comment puis-je résoudre ce problème ou comment puis-je trouver les causes?

Répondre

5

Où essayez-vous d'accéder à la propriété? Si vous êtes dans onInit, le contrôle peut ne pas être encore chargé.

+0

Juste. Cela est parfaitement logique pour un cas que j'ai eu aussi bien. –

5

Où exactement dans le code tentez-vous de le faire? Il est possible que vous essayiez d'accéder au contrôle trop tôt dans le page lifecycle et qu'il n'ait pas encore été instancié.

0

Si vous avez créé UserControl pendant l'exécution (via ControlCollection.Add), vous devez également le créer lors de la publication.

Un autre cas peut être votre UserControl ne correspond pas à la page designer.cs

0

je tentais de définir la propriété de balisage sur un contrôle utilisateur extérieur. Quand j'ai pris la propriété à OnLoad, cela a fonctionné.

Questions connexes