我在做作业的时候,我想实现一个功能,就是我点击修改,则datagridview的readonly属性变为false,然后button上面的text“修改” 变为“确定” ,当再次点击button时,有个提示窗口
当我打击“是”的按钮的时候,datagridview的修改保存并且readonly的属性变为true。备注:datagridview控件的修改内容没有保存到数据库。 我的问题是:我想在我点击“否”按钮的时候,datagridview的显示的数据恢复到修改前的数据,既撤销对datagridview的修改。 谢谢大家的帮助呀。 我想过用事务来处理,但是具体怎么操作我不了解。有什么更加简便的方法吗?
private void btnChang_Click(object sender, EventArgs e)
{
if (btnChang.Text == "修改")
{
btnChang.Text = "确定";
dataGridView1.ReadOnly=false;
}
else
{
if (MessageBox.Show("确定修改吗?", "询问", MessageBoxButtons.YesNo) == DialogResult.Yes )
{
dataGridView1.ReadOnly = true;
btnChang.Text = "修改";
MessageBox.Show("修改成功");
}
else
{
dataGridView1.ReadOnly = true;
}
}
}
当我打击“是”的按钮的时候,datagridview的修改保存并且readonly的属性变为true。备注:datagridview控件的修改内容没有保存到数据库。 我的问题是:我想在我点击“否”按钮的时候,datagridview的显示的数据恢复到修改前的数据,既撤销对datagridview的修改。 谢谢大家的帮助呀。 我想过用事务来处理,但是具体怎么操作我不了解。有什么更加简便的方法吗?
private void btnChang_Click(object sender, EventArgs e)
{
if (btnChang.Text == "修改")
{
btnChang.Text = "确定";
dataGridView1.ReadOnly=false;
}
else
{
if (MessageBox.Show("确定修改吗?", "询问", MessageBoxButtons.YesNo) == DialogResult.Yes )
{
dataGridView1.ReadOnly = true;
btnChang.Text = "修改";
MessageBox.Show("修改成功");
}
else
{
dataGridView1.ReadOnly = true;
}
}
}
首先你必须告诉我,你的数据源是否是DataTable,如果是,可以利用它的内置方法进行回滚,当点击确定时则提交,如果还要修改数据库,则提交前必须执行数据库更新操作。如果是List<T>数据源,则必须人为记录原始状态,需创建List<T>的副本记录修改前的值。
http://blog.csdn.net/bdmh/archive/2011/05/17/6426564.aspx
可以可以做了删除。。先记录到cookies中。。
与事务什么的无关
我不知道你对于true和false的象征着什么懂不
这个没什么要特别了解的。。删除之前先写一个cookies...把修改之前的信息记录一下。。