224 messaggi dal 25 novembre 2001
Ho costruito un carrello della spesa.
la pagina order.aspx contiene la lista dei prodotti, inserisco la quantità in una textbox e invio alla pagina cart.aspx che contiene il carrello.
In sessione invio una sortedlist con dei separatori, in cart.aspx viene prelevata, splittata, inserita in un datatable e riempe un datagrid.
Nel datagrid la casella quantità (Qta) deve essere aggiornabile e la inserisco in questo modo.

<asp:TemplateColumn HeaderText="Qta">
    <ItemTemplate>
       <asp:TextBox ID="Qta" runat="server" Text='<%# DataBinder.Eval (Container, "DataItem.Qta") %>'></asp:TextBox>
   </ItemTemplate>
    </asp:TemplateColumn>


Il comando viene gestito dal tagrid in questo modo

OnItemCommand="ItemsGrid_Command"

e con questo pulsante

            <asp:ButtonColumn 
                 HeaderText="Aggiorna" 
                 ButtonType="LinkButton" 
                 Text="Aggiorna" 
                 CommandName="Aggiorna"/>  


il metodo richiamato
protected void ItemsGrid_Command(Object sender, DataGridCommandEventArgs e)
{
   switch (((LinkButton)e.CommandSource).CommandName)
        {

  case "Delete":
  DeleteItem(e);
  break;

  case "Aggiorna":
  Aggiorna(e);
  break;

         default:
         break;

        }
}


rinvia al metodo
protected void Aggiorna(DataGridCommandEventArgs e)
{
         ..... 
     TextBox Qta = (TextBox)e.Item.FindControl("Qta");
     string qta = Qta.Text;
         .....
}

il mio problema consiste nel fatto che il valore che ricavo dalla TextBox (Qta) è quello che precede l'aggiornamento.
Se ordino 10 prodotti e poi decido di scendere a cinque, anche se inserisco 5 nella textbox e clikko su aggiorna, il valore Qta.Text continuerà ad essere 10.
Dove sbaglio?

Bye
Usul
Ciao,

domanda: non è che richiami il metodo DataBind() della griglia *prima* di leggere il valore della Textbox?

m.
224 messaggi dal 25 novembre 2001
Bingo!!!
grazie mille

a volte più la soluzione è evidente e meno la si nota

Bye
Usul

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.