private void btnClass_Save_Click(object sender, EventArgs e) { ESPClass cls = new ESPClass(txtClassName.Text, txtClassTitle.Text); if (Mode == EditorMode.Edit) { cls.Id = long.Parse(txtClassId.Text); } if (!ValidateClass(cls)) { txtClassName.Focus(); return; } if (!SaveClass(cls)) { return; } MessageBox.Show("Saved!", "Class information", MessageBoxButtons.OK, MessageBoxIcon.Information); Mode = EditorMode.None; btnClass_Save.Enabled = false; txtClassName.ReadOnly = (Mode == EditorMode.None); txtClassTitle.ReadOnly = (Mode == EditorMode.None); LoadClasses(); btnClass_New.Focus(); }
private void lbClasses_SelectedIndexChanged(object sender, EventArgs e) { Mode = EditorMode.None; btnClass_Save.Enabled = false; txtClassName.Text = string.Empty; txtClassTitle.Text = string.Empty; txtClassId.Text = "0"; txtClassName.ReadOnly = (Mode == EditorMode.None); txtClassTitle.ReadOnly = (Mode == EditorMode.None); if (null == lbClasses.SelectedItem) { return; } ESPClass selCat = lbClasses.SelectedItem as ESPClass; if (selCat == null) { return; } txtClassId.Text = selCat.Id.ToString(); txtClassName.Text = selCat.Name; txtClassTitle.Text = selCat.Title; }
private bool DeleteClass(ESPClass cls) { if (null == cls) { return(false); } try { var curClses = DB.ChangeTracker.Entries <ESPClass>(); var curCls = curClses.Where(e => e.Entity.Id == cls.Id).Select(e => e.Entity).FirstOrDefault(); if (null != curCls) { DB.Classes.Remove(curCls); DB.SaveChanges(); } } catch (Exception ex) { MessageBox.Show(ex.Message); return(false); } return(true); }
private bool SaveClass(ESPClass cls) { try { if (Mode == EditorMode.AddNew) { DB.Classes.Add(cls); } else { var curClses = DB.ChangeTracker.Entries <ESPClass>(); var curCls = curClses.Where(e => e.Entity.Id == cls.Id).Select(e => e.Entity).FirstOrDefault(); if (null != curCls) { curCls.Name = curCls.Name; curCls.Title = curCls.Title; } } DB.SaveChanges(); } catch (Exception ex) { MessageBox.Show(ex.Message); return(false); } return(true); }
private bool ValidateClass(ESPClass cls) { if ((cls == null) || (cls.Name == string.Empty) || cls.Title == string.Empty) { MessageBox.Show("Invalid information.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } if (Mode == EditorMode.AddNew) { var Classes = DB.Classes.Where(e => e.Name == cls.Name || e.Title == cls.Title).FirstOrDefault(); if (null != Classes) { MessageBox.Show("Already exist.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } } return(true); }
private void lbClasses_KeyDown(object sender, KeyEventArgs e) { switch (e.KeyCode) { case Keys.Delete: { if (null == lbClasses.SelectedItems) { return; } bool bChanged = false; foreach (var obj in lbClasses.SelectedItems) { ESPClass cls = obj as ESPClass; if (DeleteClass(cls)) { bChanged = true; } } if (!bChanged) { return; } Mode = EditorMode.None; btnClass_Save.Enabled = false; txtClassName.ReadOnly = (Mode == EditorMode.None); txtClassTitle.ReadOnly = (Mode == EditorMode.None); LoadClasses(); } break; default: break; } }