안녕하세요 crud messagebox에서 코드를 간소화하고 싶습니다. 나는 현재 CRUD 폼의 20 개 페이지에 4 개의 버튼을 만들고, 삭제 및 재설정을 업데이트합니다. 어떻게 이것을 사용자 정의 컨트롤이되도록 단순화합니까? 그래서 난 "성공적으로 저장", "죄송합니다, 오류"을 writting 계속해야 돈 것을 ...어떻게 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
나는 그것이 UI 디자인 UI에 달려 있다고 생각한다. 나를 위해, 나는 일반적으로 삭제 및 업데이트와 검색을 연결합니다. 일반적으로로드시에 선택이 완료되면 사용자가 필터를 수행하거나 업데이트 또는 삭제하려는 필터를 클릭 할 수 있습니다. 이 3 개가 1 페이지에 함께 제공됩니다. 삽입 기능은 새로운 UI가 표시되는 팝업 형태로 나타납니다. –
팝업이없는 CRUD가있는 페이지가 더 좋다고 생각합니다. 왼쪽에 gridview가 있고 오른쪽에 몇 개의 컨트롤이있는 페이지를 시각화하는 데 도움이됩니다. gridview ... gridview를 클릭하면 해당 데이터가 오른쪽의 컨트롤에 표시됩니다. – VeecoTech