Domanda

Ho un'applicazione Asp.NET (VS2008, Framework 2.0).Quando provo a impostare una proprietà su uno dei controlli utente come

myUserControl.SomeProperty = someValue;

ottengo un NullReferenceException.Quando eseguo il debug, l'ho scoperto myUserControl è zero.Com'è possibile che un handle di controllo utente sia nullo?Come posso risolvere questo problema o come posso trovare le cause di ciò?

È stato utile?

Soluzione

Da dove stai tentando di accedere alla proprietà?Se sei in onInit, il controllo potrebbe non essere ancora caricato.

Altri suggerimenti

Dove esattamente nel codice stai tentando di farlo?È possibile che tu stia tentando di accedere al controllo troppo presto ciclo di vita della pagina e non è stato ancora istanziato.

Se hai creato UserControl durante il runtime (tramite ControlCollection.Add), devi crearlo anche nel postback.

Un altro caso può essere che il tuo UserControl non corrisponda alla pagina designer.cs

Stavo cercando di impostare la proprietà dal markup su un controllo utente esterno.Quando ho portato la proprietà su OnLoad, ha funzionato.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top