我一直在使用windows表单创建一个项目,基本上我的程序包括3个表单:登录、数据库查看器和一个单独的表单来编辑数据库。
编辑数据库时:如果数据库是空的,我尝试删除一条记录两次,我的程序中断,我得到错误:System。InvalidOperationException:“无法从列表中删除当前项,因为没有当前项。”代码>
我是否可以实现任何类型的代码来防止在表为空时使用delete按钮?
这是我为数据库的删除按钮编写的代码,因为我不知道该怎么做,所以没有其他代码可以处理我自己修改过的数据库。
{
if (MessageBox.Show("Are you sure you'd like to delete this record?", "Delete Record", MessageBoxButtons.YesNo) == DialogResult.Yes)
{
this.computer_GamesBindingSource.RemoveCurrent();
this.Validate();
this.computer_GamesBindingSource.EndEdit();
}
}
尝试进行如下检查:
if (this.computer_GamesBindingSource.Count > 0)
{
/* put delete code here */
}
这样,只有在有记录时才执行删除代码。
有关详细信息,请参阅https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.bindingsource.count