14 messaggi dal 02 ottobre 2007
Salve a tutti,
ho un progetto in Silverlight 4 che utilizza i WCF RIA Services che gestiscono,tra le altre cose anche una tabella in cui c'è il classico trittico Importo, Quantità e Totale.
Tutte queste info sono visualizzate in una dataform.
Come posso calcolare il Totale in automatico quando è stato inserito l'importo e la quantità?
Ho tentato di inserire il codice nella classe che racchiude i metadati ma senza successo, qualcuno ha qualche suggerimento da dare a questo povero neofita ?
Grazie
41 messaggi dal 14 ottobre 2010
nella tua classe che rappresenta l'entità, puoi creare una proprietà Totale che restituisce il prodotto Importo per Quantità,
ed il suo valore verrà tranquillamente calcolato e visualizzato:

[Display(Name = "Totale")]
public decimal TotaleCalcolato
{
            get
            {
                return Importo * Quantita;
            }
}

Il libro su Silverlight in italiano:
Silverlight 4 - Guida Alla Programmazione
14 messaggi dal 02 ottobre 2007
Grazie Antonio, però quello che non riesco a fare è visualizzare il risultato sulla dataform.
Cerco di spiegarmi meglio descrivendoti ciò che ho come obiettivo.
Inserendo una nuovo elemento ogni volta che modifico nella dataform il valore dell'importo o della quantita vorrei che il totale venga ricalcolato e visualizzato nella dataform stessa.
Per fare questo oltre al codice nella classe mi occorre intercettare un qualche evento ?
41 messaggi dal 14 ottobre 2010
Allora dovresti implementare l'interfaccia INotifyPropertyChanged
e quindi quando modifichi importo o quantità, "notificare" che anche la proprietà Totale è cambiata:
public class Prodotto : INotifyPropertyChanged
{
        public decimal Importo
        {
            get
            {
                return importo;
            }
            set
            {
                if (importo!= value)
                {
                    importo= value;
                    OnPropertyChanged(new PropertyChangedEventArgs("Totale"));
                }

            }
        }
  
        public event PropertyChangedEventHandler PropertyChanged;

        public void OnPropertyChanged(PropertyChangedEventArgs e)
        {
            if (PropertyChanged != null)
                PropertyChanged(this, e);
        }

        ....

}

Il libro su Silverlight in italiano:
Silverlight 4 - Guida Alla Programmazione
14 messaggi dal 02 ottobre 2007
GRAZIE !!!!
Funziona tutto meravigliosamente.

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.