Как выполнить действие, если выбран элемент просмотра списка CheckBox?

У меня есть проект 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>

1 ответ

Решение

Я очень новичок в xaml/ C#, поэтому я прошу прощения за этот плохой вопрос, но это так же просто, как сказать:

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

чтобы получить товар, который вы проверили.

Другие вопросы по тегам