В C # существует множество решений для слабо связанных сообщений, но ни одно из них не относится к UWP.Если вы создаете свое приложение с использованием MVVM-фреймворка, оно, вероятно, также будет содержать одно - например, Prism имеет EventAggregator
, MvvmCross имеет MvxMessenger
, а в MvvmLight вы используете MessengerDefault
.Я бы выбрал одну из фреймворков и использовал предоставленную возможность мессенджера, так как она проверена в бою и стабильна.Вам даже не нужно использовать саму полную MVVM-инфраструктуру и просто использовать компонент агрегатора событий.Дополнительные сведения о том, как это работает, см., Например, в этом посте MSDN .
. Самое основное решение - использовать базовые события C #, но это сильные ссылки, поэтому вам нужно помнитьотписаться от событий, которые вы зарегистрировали, в противном случае подписчик останется в памяти.