Domanda

Voglio aggiungere le opzioni per un dropdownbox sulla mia pagina aspx dal codice C # dietro durante il caricamento. Non so come ottenere un riferimento al controllo. Ho qualche codice C # che si attiva quando l'utente modifica il dropdownbox. In che ho un riferimento alla discesa con:

DropDownBox ddb = (DropDownBox)info.Toolbar.ToolbarItems.Find("ID");

Ma non funzionerà se provo in

protected void Page_PreRender(object sender, EventArgs e)
    {

sulle mie aspx.cs

Che cosa mi manca? Grazie.

È stato utile?

Soluzione

Se si desidera che l'elemento selezionato della discesa da selezionare automaticamente ViewState sul postback hai bisogno di avere tutte le voci del menu a discesa dagli incendi Page_PreLoad tempo. Per fare questo si vuole mettere il codice in Page_Init, a questo punto, i controlli si creano ma viewstate non è ancora stato iniettato loro.

Date un'occhiata qui pagina ASP.NET ciclo di vita Panoramica per informazioni sulla pagina del ciclo di vita.

Vedo che la vostra discesa si trova in un contenitore padre, potrebbe essere necessario chiamare info.EnsureChildControls () prima di utilizzare find () se non è in grado di ottenere un riferimento al vostro controllo.

Altri suggerimenti

PreRender è verso la fine del ciclo di vita pagina. Sei sicuro di voler essere apportare modifiche lì? Suona come si dovrebbe essere cambiando elementi nel menu a discesa quando si è inizialmente legato o quando la sua selezione è cambiato.

http://codebetter.com/blogs/ /images/codebetter_com/raymond.lewallen/89/o_aspNet_Page_LifeCycle.jpg

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