Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xamarin 创建模板类并添加事件时,是否需要删除它?_Xamarin_Xamarin.forms - Fatal编程技术网

Xamarin 创建模板类并添加事件时,是否需要删除它?

Xamarin 创建模板类并添加事件时,是否需要删除它?,xamarin,xamarin.forms,Xamarin,Xamarin.forms,以下是我的代码: namespace X.Templates { public class ABCTemplate : Grid { public ABCTemplate() { TapGestureRecognizer tap = new TapGestureRecognizer() { NumberOfTapsRequired = 1 }; tap.Tapped += Tap_Tapped;

以下是我的代码:

namespace X.Templates
{
    public class ABCTemplate : Grid
    {

        public ABCTemplate()
        {
            TapGestureRecognizer tap = new TapGestureRecognizer() { NumberOfTapsRequired = 1 };
            tap.Tapped += Tap_Tapped;
        }

        private void Tap_Tapped(object sender, EventArgs e)
        {
            //
        }
    }
}
我应该做些什么来移除Tap_Tapped,还是在ABCTemplate不再使用时它会消失

是否需要将其移除

EventHandler是由垃圾收集器(GC)隐式清理的托管资源。您不必编写代码来显式释放此类资源

因此,在您的情况下,不需要手动删除它,因为当父视图结束其生命周期(从当前页面弹出或从页面删除)时,它将自动释放

当然,有时我们会看到这样的代码

tap.Tapped -= Tap_Tapped;
这是因为代码标准。如果我们以错误的方式调用代码,可能会让事件不再工作。

什么是“删除点击”意思?你的意思是你不需要它在模板?