C# MVVM Prism Event Aggregator

0

Staram się rozkminić MVVM przy pomocy Prisma i są to bardzo podstawowe kroki.

Nie jestem pewien czy to nie łamie jakichś zasad MVVM, ale bardzo bym chciał aby w momencie kiedy zmieni się wartośc property Modelu, odpalił się event (za pomoca Event Aggregatora) i nasłuchujący go ViewModel wykonał jakąś akcję.

Niestety w momencie kiedy dochodzi do zmiany mojego property i odpala się Publish() , to nic się nie dzieje ;-( - nie wchodzi mi to metody.

Korzystając z różnych tutoriali mam następujący kod:

Model:

public class TrainingSession : BaseClass
    {
        private Agent _Trainer;
        public Agent Trainer
        {
            get { return _Trainer; }
            set
            {
                SetProperty(ref _Trainer, value);
                ea.GetEvent<ApplicationMessanger>().Publish();
            }
        }

private EventAggregator ea;
public TrainingSession()
        {
               this.ea = new EventAggregator();
         }
   }



ViewModel:

        public TrainerViewModel(IEventAggregator ea)
        {
            ea.GetEvent<ApplicationMessanger>().Subscribe(RefreshFilterList);
        }

        private void RefreshFilterList()
        {
            //się cos ma robić
        }

ApplicationMessanger:

    public class ApplicationMessanger : PubSubEvent
    {

    }

Z góry dziekuję za pomoc.

0

Witam,

A ten EventAggregator nie może być jakoś tak bardziej globalny?

Pozdrawiam,

mr-owl

0

A co konkretnie chcesz osiągnąć?

1 użytkowników online, w tym zalogowanych: 0, gości: 1