0

我有一个 Xamarin.Forms 项目,我在其中使用 Xlabs 来实现复选框。我可以让他们出现,这很棒。我希望能够做到这一点:

void OnSelection(object sender, SelectedItemChangedEventArgs e)
    {
        if (e.SelectedItem == null)
            return;
        var selectedStudent = ((ListView)sender).SelectedItem as Student;

        // set time of student checkin
    }

但是用我的复选框。我希望能够在发生时处理复选框选择。根据我在网上看到的情况,我可以为我的学生对象设置一个新的布尔属性selected,但这根本不适用于我的项目。这是我目前的方法:

    void OnSelection(object sender, EventArgs e)
    {
        CheckBox isCheckedOrNot = (CheckBox)sender;
        var name = isCheckedOrNot.DefaultText;

        //not sure what to do here?
        var student = ((CheckBox)sender)...

        // set time of student checkin
    }

编辑:复选框声明如下:

<ViewCell>
    <ViewCell.View>
        <controls:CheckBox DefaultText="{Binding complete_name}"  TextColor="Black" CheckedChanged="OnSelection" Checked="{Binding selected}"/>
    </ViewCell.View>
</ViewCell>
4

1 回答 1

0

我对 xaml/c# 很陌生,所以我很抱歉提出这个不好的问题,但这很简单:

    void OnSelection(object sender, EventArgs e)
    {
        CheckBox isCheckedOrNot = (CheckBox)sender;
        var selectedStudent = isCheckedOrNot.BindingContext as Student;
        ...
    }

获取您检查的项目。

于 2016-06-20T14:57:18.633 回答