Con risposta MVVM - eseguire calcoli su campi bindati

  • martedì 21 febbraio 2012 19:02
     
     

    Buona sera a tutti.

    Situazione:

    Classe MVVM con la property "DettagliDoc" bindato su una Window e quindi textBox bindati sui campi della property DettagliDoc: DettagliDoc.DDArticolo, DettagliDoc.Prezzo, ecc...

    Oltre a questi campi, ci sono campi che modificano altri campi in base al valore che hanno; per esempio:

    il campo DettagliDoc.Qt contiene di default il valore "1".

    quando nel TextBox bindato con DettagliDoc.Qt cambio il valore per esempio da "1" a "2", voglio che il campo DettagliDoc.TotaleRiga diventi DettagliDoc.Qt * DettagliDoc.PrezzoUnitario.

    Quanto nel textBox bindato con DettagliDoc.Sconto1 metto il 20% di sconto, voglio che il campo DettagliDoc.TotaleRiga diventi DettagliDoc.Qt * (DettagliDoc.PrezzoUnitario - (DettagliDoc.PrezzoUnitario * Sconto)), ecc...

    Nella classe ViewModel ho fatto una property chiamata Qt:

      public decimal? Qt
            {
                get
                {
                    return MovMagDett.Quantita;
                }
                set
                {
                    MovMagDett.Quantita = value;
                    CalcolaDettaglio();
                }
            }

    il metodo CalcolaDettaglio() dovrebbe fare tutti i calcoli in base ai valori ma quando modifico il TextBox bindato a Qt, non avviene nulla.
    Questo è il binding:
    Text="{Binding Path=Qt,  UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"

    Grazie.


    Pranzo Stefano

Tutte le risposte