首页 > 解决方案 > 如何从 Xamarin Forms 的页面中删除点击的事件?

问题描述

我已将此代码添加到页面上的 OnAppearing 中。

    protected override void OnAppearing()
    {
        base.OnAppearing();
        tap.Tapped += (object sender, EventArgs e) => {
            Shell.Current.GoToAsync("HelpTab2");
        };
    }

问题是现在该方法似乎正在添加越来越多的点击命令。

当页面消失时,有没有办法可以从页面中删除它?

标签: xamarinxamarin.forms

解决方案


您可以,但不能使用匿名代表。您必须使用实际的事件处理程序

// add handler
tap.Tapped += MyTappedHandler;

// remove handler
tap.Tapped -= MyTappedHandler;

protected void MyTappedHandler(object sender, EventArgs e)
{
  Shell.Current.GoToAsync("HelpTab2");
};

推荐阅读