la creazione dinamica di molti casi di usercontrols ASP.NET: Come posso creare, e dove saranno i miei conflitti essere?

StackOverflow https://stackoverflow.com/questions/3423339

Domanda

Non ho visto questa attuato prima in ASP.NET, ma sto pensando a un utente che guardare e agire in questo modo:

concettuale Panoramica

  • A TabControl viene caricato e la prima scheda contiene una griglia
  • Quando una riga si fa doppio clic, una nuova scheda viene creato con dettaglio record
  • Il contenuto della scheda dettaglio / record viene creato da un UserControl
  • Molte schede potrebbero essere creati, e saranno creati quindi molti casi di UserControl

Lo so ASP.NET rinominerà la mia (runat="server") ID è per me, e che posso usare jQuery o ASP.NET codice lato server per il lavoro con l'ID del ... Le mie preoccupazioni sono:

  • Come posso chiedere ASP.NET per generare un ID univoco per ogni ennesima istanza del mio UserControl (per essere resi in un segnaposto)
  • Come faccio effettivamente creare tale istanza extra del controllo?
  • Che altro devo tenere a mente?

Dato che non voglio postback Sto pensando basando la mia implementazione di fuori di ComponentArt Callback Control , e l'utilizzo di controlli utente ASP.NET per ottenere questo effetto. Questo mi permetterà di fare la maggior parte delle cose che richiedono un postback, ma non si aggiornerà tutti gli elementi di una pagina ... solo la sezione che contiene il controllo utente. Detto questo, io non sono legato ad una particolare implementazione.

È stato utile?

Soluzione

Si dovrebbe esaminare il metodo Page.LoadControl. E funziona bene e, per quanto mi ricordo di mettere i segnaposto sulla tua pagina e caricare i controlli nelle segnaposto, è così che è possibile controllare gli ID.

Una cosa che non funziona così bene con questo approccio è quando il vostro controllo solleva gli eventi che l'oggetto pagina deve gestire. Se il controllo è selfcontained, tuttavia, non si dovrebbe avere un problema.

Questo aiuto potrebbe iniziare: http://www.codeproject.com/KB/aspnet/LoadingUSerControl.aspx

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