我想使用后台任务将数据发送到UWP App,所以我想到 MessagingCenter 。我创建了一个可移植库,由 UWP App 和运行时组件引用,它包含一个名为 ProgressMessage 。 当后台任务正在运行时,数据将由MessagingCenter发送到App.Send但在App中没有发生任何事情。
[在RuntimeComponent中运行方法]
ProgressMessage _progressMessage = new ProgressMessage();
//Send message to MessagingCenter
MessagingCenter.Send<ProgressMessage, decimal>(_progressMessage, "Value", value);
[的MainPage]
public MainPage ()
{
InitializeComponent ();
BindingContext = this;
MessagingCenter.Subscribe<ProgressMessage, decimal>(this, "Value", (message, value) =>
{
Device.BeginInvokeOnMainThread(() => {
this.Value = value;
Debug.WriteLine("Value is " + value.ToString());
});
});
}