我正在创建一个类型为多个选项的ListView(复选框),如下所示
var adapter = new ArrayAdapter(this, Android.Resource.Layout.SimpleListItemMultipleChoice);
attendanceListView.Adapter = adapter;
现在我想检查从spinner
中选择项目时的一些复选框和ListView填充为
adapter.Add("Select All");
foreach (var item in studentInformation)
{
adapter.Add(item.studentName.ToString());
}
直到这里,每件事情都是完美的。但是现在从courseSpinner 中选择项目时会出现问题
private void CourseSpinner_ItemSelected(object sender, AdapterView.ItemSelectedEventArgs e)
{
ListView list = (ListView)sender;
for (int count = 0; count < attendanceInformation.Count(); count++)
{
if (attendanceInformation[i].status == true)
{
selectedStudents[i] = attendanceInformation[i].studentId;
list.SetItemChecked(i, true);
}
else
{
list.SetItemChecked(i, false);
}
}
}
但它引发了一个例外:
System.InvalidCastException:指定的强制转换无效。
答案 0 :(得分:0)
ListView list = FindViewById<ListView>(Resource.Id.list);
而不是使用
ListView list = (ListView)sender;