如何使用Xamarin.Forms MessagingCenter而不将其绑定到UI?

时间:2017-11-16 15:20:59

标签: xamarin xamarin.forms messagingcenter

我有一个长时间运行的任务,需要使用类似Toast的消息通知用户。但是,用户可以自由地在应用程序中移动。

查看https://developer.xamarin.com/guides/xamarin-forms/application-fundamentals/messaging-center/,它表明绑定到UI是必要的吗?

MessagingCenter.Subscribe<MainPage> (this, "Hi", (sender) => {
    // do something whenever the "Hi" message is sent
});
MessagingCenter.Send<MainPage> (this, "Hi")

我需要在后台发送通知,而我不知道是谁。

2 个答案:

答案 0 :(得分:0)

您可以在App.xaml.cs(或App.cs)课程中订阅该邮件。然后只需从任何地方发送消息,然后运行订阅者的委托。

答案 1 :(得分:0)

如果您看一下它不需要绑定到UI,而只需绑定到作为订阅者的Object。所以你可以在代码中将订户设置为'this'。

收到你可以在没有。

的情况下使用的东西
MessagingCenter.Subscribe(this, "Hi", (sender) => 
{
    // do something whenever the "Hi" message is sent
});

发送一些你可以使用的东西。

MessagingCenter.Send<MainPage> (this, "Hi")