Pagina 1 di 6 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 52
  1. #1

    Popolare una GridView con dati inseriti nelle TextBox

    Buona sera,
    ho creato una pagina asp.net con dei controlli label nome, cognome, indirizzo, email e telefono e le relative text box in cui l'utente inserisce i propri dati e sotto due pulsanti inserisci e cancella.
    Al cllic su inserisci voglio far si che l'utente veda i dati che ha inserito nelle textbox in una gridview che ho inserito nella pagina asp.net.
    Come posso risolvere?
    Grazie

  2. #2
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    se ti serve memorizzarli, devi inserirli in un database e poi prelevarli per darli come sorgente ad una gridview.

    altrimenti, basta 'simulare' la gridview e fare una tabellina con i dati inseriti

  3. #3
    io costruirei una classe che identifica l'oggetto (Persona) con tutte le proprietà.

    quando clicchi su "aggiungi", crei l'oggetto, valorizzi i campi con i dati delle textbox.
    Poi a livello di pagina (o sessione o cache) costruisci una Lista (List<Persona>), aggiungi il nuovo oggetto, e dai in pasto la lista alla gridview.

    Per salvare su DB è un altro passo

  4. #4
    Tutto chiaro fino alla creazione dell'oggetto.
    ho costruito una classe che identifica l'oggetto (Persona) e al clic su aggiungi creo l'oggetto. Ora come valorizzo i campi con i dati delle textbox?

  5. #5
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    dovresti dirci che linguaggio usi...

  6. #6
    piccolo esempio:
    codice:
    Persona nuovoImpiegato = new Persona();
    nuovoImpiegato.Nome = this.txtNome.text;
    nuovoImpiegato.Cognome = this.txtCognome.text;
    ...
    ...
    ti consiglio comunque di andare a vedere come funziona un ObjectDataSource, ti renderà la cosa molto più semplice.
    http://www.ezzylearning.com/tutorial.aspx?tid=5277343
    http://www.asp.net/web-forms/tutoria...tdatasource-cs
    http://archive.msdn.microsoft.com/ObjectDataSourceNort

  7. #7
    Il linguaggio è c#.
    Questo è il codice che ho scritto:

    codice:
     public partial class Registrazione : System.Web.UI.Page
        {
            protected void Invia_onclick(object sender, EventArgs e)
                {
                    //creo l'oggetto
                    Registrazione reg = new Registrazione();
    
                    //valorizzo i campi con i dati delle textbox
                    reg.Nome = this.txtNome.Text;
                    reg.Cognome = this.txtCognome.Text;
                    reg.Email = this.txtEmail.Text;
                    reg.Login = this.txtLogin.Text;
                    reg.Password = this.txtPassword.Text;
                    reg.ConfermaPassword = this.txtConfermaPassword.Text;
    
    
                    //a livello di pagina (o sessione o cache) costruisco una Lista (List<Persona>)
                    List<Registrazione> list = new List<Registrazione>();    
    
                    //aggiungo il nuovo oggetto. 
                    list.Add(reg);
    Non riesco a proseguire e a capire dove sbaglio

  8. #8
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    sbagli quasi in tutto ma non preoccuparti siamo tutti qui per imparare

    se vuoi seguire il suggerimento di Gluck, devi fare una classe "Persona" (magari in un file ".cs" a parte nella Solution), e metterci tutte le proprietà, speculari ai campi che vuoi salvare. Ovviamente rispettando le regole di sviluppo di una classe, in particolare con le proprietà, fornendo un set ed un get per impostare o leggerne il valore.

    codice:
    public class Persona
    {
        private string _Nome;
        public string Nome
        {
            get { return _Nome;  }
            set { _Nome = value; }
        }
    
        private string _Cognome;
        public string Cognome
        {
            get { return _Cognome;  }
            set { _Cognome = value; }
        }
    
        // eccetera per tutti gli altri campi
    
        // Costruttore
        public Persona()
        {
          // ...     
        }
    }
    e poi dalla tua pagina aspx/cs:

    codice:
    protected void Invia_onclick(object sender, EventArgs e)
    {
      // Creo l'oggetto
      Persona P = new Persona();
    
      // Valorizzo i campi con i dati delle textbox
      P.Nome = txtNome.Text;
      P.Cognome = txtCognome.Text;
    
      // ... eccetera
    }

  9. #9
    Ok, ma nel file .cs che faccio a parte nella Solution devo scrivere solo la classe con le proprietà e il costruttore come mostrato o devo anche inserire le clausole using, presenti negli altri cs? e poi se lo stesso file lo devo agganciare alla pagina aspx.
    Poi come faccio ad aggiungere l'oggetto "Persona" e passarlo alla gridview?

  10. #10
    la lista delle registrazioni, non deve stare dentro l'evento click del pulsante, ma deve essere una proprietà della pagina/classe, e dovresti inizializzarla nell'evento OnInit.

    codice:
    public partial class Registrazione : System.Web.UI.Page
    {
            public List<Registrazione> list
            {
                get
                {
                    return ViewState["ListaRegistrazioni"] as List<Registrazione>;
                }
                set
                {
                    if (value != null)
                        ViewState["ListaRegistrazioni"] = value;
                }
            }
    
    
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            if (list == null)
                list = new List<Registrazione>();
        }
    
        protected void Invia_onclick(object sender, EventArgs e)
        {
            ...
            ...
            list.Add(reg);
            griglia.datasource= list;
            griglia.databind();
        }
    }
    Inoltre, molto importante, se hai già una classe che si chiama Registrazione, la tua pagina non la chiamare uguale, chiamala piuttosto page_Registrazione.

    ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.