Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Notify a ViewmOdel property from another ViewModel

  •  12-02-2011, 10:54

    Notify a ViewmOdel property from another ViewModel

    Καλημέρα σε όλους,

    προσπαθώ να καταλάβω με ποια λογική μπορεί ένα property απο ενα viewModel να πάρει τιμή απο ένα άλλο viewModel.

    Πιο συγκεκριμένα:

    έχω ενα application το οποίο έχει δύο  windows (χρησιμοποιούν διαφορετικά viewModels), το mainWIndow και ακόμα ένα (ας το πούμε popWindow) το οποίο ανοίγει με το πάτημα ενός κουμπιού.

    Αυτο που θέλω είναι:
    •  όταν ο χρήστης ανοίξει το popWindow να επιλέξει ένα item απο μια λίστα. Αυτό το item notifies ένα property στο viewModel του
    • Απο το viewModel του popWindow θέλω να περάσω το ίδιο Property στο viewModel του mainWindow. Το mainWIndow πρέπει να εμφανίσει την τιμή του property στο UI.
    προσπάθησα να κάνω το εξής:
    Έφτιαξα μια μέθοδο  στο viewModel του popWindow με όνομα OnSelectedItemChanged, η οποία ενημερώνει το viewModel του mainWindow.
    Δεν έπαιξε :(
     private Hotel _selectedHotel { get; set; }
            public Hotel SelectedHotel {
                get { return _selectedHotel; }
                set {
                    _selectedHotel = value;
                    RaisePropertyChanged("SelectedHotel");
                    OnSelectedItemChanged();
                }
            }
    
     void OnSelectedItemChanged() {
                MainWIndowViewModel = new MainWIndowViewModel(this.SelectedHotel);
            }

    Ποια είναι η λογική για να γίνει κάτι τέτοιο.
    Εκτός απο την λογική θα εκτιμούσα αν κάποιος μπορούσε να δείξει ενδεικτικά και κάποιο κομμάτι κώδικα.
    Ευχαριστώ


    αν δεν το θες, www.antallakseto.gr
    Δημοσίευση στην κατηγορία: ,
Δείτε όλες τις δημοσιεύσεις της Θεματική Ενότητας
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems