假设我需要将项目的状态从active = true更改为active = false,反之亦然,同时将更改保留在数据库表中。
我测试了ItemChecked事件,如下所示:
private void listView1_ItemChecked(object sender, ItemCheckedEventArgs e)
{
ListViewItem item = (ListViewItem)sender;
if (item != null)
{
Book b = (Book) item.Tag;
b.MakeActive(item.Checked);
}
}
我失败了。
任何人都可以帮助我吗?
答案 0 :(得分:2)
在这种情况下object sender
为ListView
而非ListViewItem
您的代码应为此
private void listView1_ItemChecked(object sender, ItemCheckedEventArgs e)
{
ListViewItem item = e.Item as ListViewItem;
if (item != null)
{
Book b = (Book) item.Tag;
b.MakeActive(item.Checked);
}
}