我新手,刚买了这本书,有源码,但是都发很麻烦啊,能帮我解决书中这个问题的,或者有这本书的电子版的回贴吧,不好意思了
//------------------处理数据导航条和新增修改等事务---------------------
private void toolBar_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
{
if (e.Button.ToolTipText == "首记录")
{
cmManage.Position = 0;
return;
}
if (e.Button.ToolTipText == "上一记录")
{
if (cmManage.Position > 0)
cmManage.Position--;
return;
}
if (e.Button.ToolTipText == "下一记录")
{
if (cmManage.Position < cmManage.Count-1)
cmManage.Position++;
return;
}
if (e.Button.ToolTipText == "尾记录")
{
cmManage.Position = cmManage.Count-1;
return;
}
if (e.Button.ToolTipText == "新增记录")
{
cmManage.AddNew();
return;
}
if (e.Button.ToolTipText == "删除记录")
{
if (MessageBox.Show("确实要删除这条记录吗?","询问",MessageBoxButtons.YesNo) == DialogResult.Yes)
{
if (cmManage.Count > 0)
cmManage.RemoveAt(cmManage.Position);
else
{
MessageBox.Show("没有可以删除的数据","提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
return;
}
}
if (e.Button.ToolTipText == "提交修改")
{
if (this.txt1.Text.Trim() == "")
{
MessageBox.Show("职员编号不能为空!","提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
return;
}
cmManage.EndCurrentEdit();
if (this.dataSet11.职员奖励表.GetChanges() != null)
{
try
{
this.sqlDataAdapter1.Update(this.dataSet11.职员奖励表);
}
catch(Exception express)
{
MessageBox.Show(express.ToString(),"提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
}
return;
}
if (e.Button.ToolTipText == "取消修改")
{
try
{
cmManage.CancelCurrentEdit(); //取消编辑
}
catch(Exception express)
{
MessageBox.Show(express.ToString(),"提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
return;
}
if (e.Button.ToolTipText == "退出")
{
this.Close();
}
}
private void txt1_TextChanged(object sender, System.EventArgs e)
{
}
}
}
我新手,按书里面的代码做,可是运行提交修改的时候总是提示“列职员编号不能为空植....” 我用监视发现是调用this.dataSet11.职员奖励表.GetChanges()的时候出现问题的,这个函数植一直为空,根本没法新增记录啊,请各位大哥帮帮忙,烦死我了~~