Domanda

Dobbiamo visualizzare il risultato di un'istruzione SQL SELECT su una pagina Web ASP.NET 3.5. Sebbene ci siano un certo numero di colonne che devono essere visualizzate, solo una delle colonne ha bisogno di una casella di testo modificabile in essa ... tuttavia ogni record nel set di risultati ha bisogno di questa casella di testo modificabile.

So di poterlo fare manualmente costruendo una tabella html da solo, ma speravo che ci fosse un modo per usare un controllo con associazione a dati (GridView? o ListView?) per farlo.

Essendo un po 'nuovo in ASP.NET, spero che ce ne sia qualcuno là fuori che lo abbia fatto.

- Grazie per l'aiuto!

Un piccolo ulteriore chiarimento ....

È necessario che tutti i record siano modificabili immediatamente dopo la visualizzazione, quindi tutti i record devono essere visualizzati contemporaneamente in modalità di modifica o la modalità di visualizzazione normale deve contenere una casella di testo modificabile.

È stato utile?

Soluzione

Usa un GridView e converti la colonna che vuoi modificare in Template. Nel ItemTemplate di questo campo, elimina l'etichetta e aggiungi una casella di testo.

Aggiungi un ulteriore " Salva " al di fuori di GridView e iterare GridRows, trovare la casella di testo (in ogni riga) e utilizzarla per aggiornare il database.

Altri suggerimenti

Aggiungi una colonna modello e quindi aggiungi un controllo casella di testo anziché un controllo etichetta

GridView BoundFields ha la proprietà ReadOnly che può essere utilizzata per impedire che il campo venga modificato in modalità Modifica. Impostalo su True per tutte le colonne che non dovrebbero essere modificabili.

<asp:boundfield datafield="myNonEditableColumn" Readonly="true" Headertext="My Non-Editable Column"/>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top