0
嗨,我想简化我的代码crud messagebox。我目前有几乎20页的CRUD表格有4个按钮的创建,更新删除和重置。我如何简化这个成为用户控件?让我不必须保留书面方式 “保存成功”, “对不起,错误”,....我怎样才能简化crud
我的代码
protected override void btnSave_Click(object sender, EventArgs e)
{
if (!validateBeforeSave()) return;
if (MessageBox.Show(MessageManager.SaveAsk, "Are you sure?", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
try
{
BindValueToObject();
if (Convert.ToInt32(lblEmpId.Text) == 0)
{
user.Add();
ResetAfterSave(true, user.Id);
base.Success = true;
}
else
{
user.Update();
ResetAfterSave(false, user.Id);
base.Success = true;
}
base.btnSave_Click(this, null);
}
catch (Exception ex)
{
Logger.Error(typeof(UsersForm), ex.ToString());
base.Success = false;
base.btnSave_Click(this, null);
}
}
}
protected override void btnDelete_Click(object sender, EventArgs e)
{
if (null == dgUser.CurrentRow) return;
user.Id = (int)dgUser.SelectedRows[0].Cells["empId"].Value;
try
{
if ((MessageBox.Show(MessageManager.DeleteAsk, "Are you sure to delete?", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes))
{
user.Delete();
ResetAfterSave(false, 0);
base.Success = true;
base.btnDelete_Click(this, null);
}
}
catch
{
base.Success = false;
base.btnDelete_Click(this, null);
}
}
的base.btnSave_Click(本,NULL);在我传递国旗的地方打电话给我。
protected virtual void btnSave_Click(object sender, EventArgs e)
{
if (this.success)
MessageBox.Show(MessageManager.SaveSuccess, "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
else
{
MessageBox.Show(MessageManager.SaveFailed, "Fail to save", MessageBoxButtons.OK, MessageBoxIcon.Stop);
return;
}
}
我觉得非常讨厌重写这一遍。
一些代码将很好地展示你到底在做什么。 – Woot4Moo 2011-04-19 02:15:46
我认为这取决于你如何设计你的用户界面。对我而言,通常我会通过删除和更新链接检索。通常选择是在加载时完成的,然后用户可以进行过滤,或者点击他们想要更新或删除的人。这3个在1页中汇集在一起。插入功能将以弹出窗口的形式出现,其中显示新的用户界面 – 2011-04-19 02:20:19
我认为一个没有弹出的CRUD页面会更好。这将帮助你用左边的gridview和右边的一些控件来显示一个页面,例如文本框..点击gridview将显示这些数据到右侧的控件。 – VeecoTech 2011-04-19 02:28:58