C# 是否可以在MonoTouch中确定用户是否单击了元素中的图像?

C# 是否可以在MonoTouch中确定用户是否单击了元素中的图像?,c#,ios,xamarin.ios,monotouch.dialog,C#,Ios,Xamarin.ios,Monotouch.dialog,我已将TODO list应用程序修改为使用徽章元素而不是布尔元素,如下所示: protected void PopulateTable() { tasks = TaskManager.GetTasks().ToList (); UIImage ticked = new UIImage("checkbox_checked.png"); UIImage unticked = UIImage.FromFile("checkbox_unch

我已将TODO list应用程序修改为使用徽章元素而不是布尔元素,如下所示:

    protected void PopulateTable()
    {
        tasks = TaskManager.GetTasks().ToList ();
        UIImage ticked = new UIImage("checkbox_checked.png");
        UIImage unticked = UIImage.FromFile("checkbox_unchecked.png");

        Root = new RootElement("Tasky") {
            new Section() {
                from t in tasks
                select (Element) new BadgeElement(t.Completed ? ticked : unticked, (t.Name==""?"<new task>":t.Name), delegate {
                        Console.WriteLine("???");

                    })
            }
        }; 
    }
但是我在IndexPath中没有看到任何允许我访问列或元素的参数


任何想法

您需要创建一个自定义版本的BadgeElement,基本上为图像引发一个事件,而不是为文本引发一个事件

幸运的是,您可以复制/粘贴BadgeElement,重命名它,创建一个新的唯一键并修改它

        var task = tasks[indexPath.Row];

        if(clickedIcon) {
            currentTask = task;
            task.Completed = !task.Completed;
            TaskManager.SaveTask(currentTask);
        } else {
            ShowTaskDetails(task);
        }