传递参数

你还可以传递带有消息的参数。

我们将使用前面示例中的分类并扩展它们。在接收部分,Subscribe 方法调用后面添加你期望的参数类型。还要确保你还在处理程序签名中声明参数。

public class FooMessaging
{
    public string Greeting { get; set; }

    public FooMessaging()
    {
        MessagingCenter.Subscribe<MainPage, string> (this, "Hi", (sender, arg) => {
            this.Greeting = arg;
        });
    }
}

发送消息时,请确保包含参数值。此外,在这里添加 Send 方法后面的类型并添加参数值。

public class MainPage : Page
{
    private void OnButtonClick(object sender, EventArgs args)
    {
        MessagingCenter.Send<MainPage, string> (this, "Hi", "Hi there!");
    }
}

在此示例中,使用了一个简单的字符串,但你也可以使用任何其他类型的(复杂)对象。