/// <summary> /// 更新表格所有数据 /// </summary> private void UpdateView(bool needSave = false) { counterView.SuspendLayout(); counterView.Rows.Clear(); CounterHolder.UpdateCounter(); foreach (Counter c in CounterHolder.Counters) { DataGridViewRow newRow = new DataGridViewRow(); newRow.CreateCells(counterView); newRow.Tag = c; newRow.SetValues( CounterHolder.FrequencyName[c.ResetFrequency], c.Content, c.ProgressText, c.ButtonText ); counterView.Rows.Add(newRow); } DataGridViewRow row = new DataGridViewRow(); row.CreateCells(counterView); row.Cells[columnContent.Index].Value = "点击「+1」添加计数"; row.Cells[columnIncrease.Index].Value = "+1"; counterView.Rows.Add(row); counterView.ResumeLayout(); if (needSave) { ManualCounter.Save(); } }
/// <summary> /// 点击菜单:下移 /// </summary> private void menuItemMoveDown_Click(object sender, EventArgs e) { var row = GetSelectedRow(); if (row != null) { MoveDown((Counter)row.Tag); ManualCounter.Save(); } }
/// <summary> /// 点击菜单:删除 /// </summary> private void menuItemDelete_Click(object sender, EventArgs e) { var row = counterView.SelectedRows[0]; int index = row.Index; if (index > -1 && index < counterView.Rows.Count - 1) { RemoveCounter((Counter)row.Tag); ManualCounter.Save(); } }
/// <summary> /// 点击菜单:重置 /// </summary> private void menuItemReset_Click(object sender, EventArgs e) { var row = GetSelectedRow(); if (row != null) { ((Counter)row.Tag).Reset(); UpdateRow(row); ManualCounter.Save(); } }
/// <summary> /// 点击菜单:编辑 /// </summary> private void menuItemEdit_Click(object sender, EventArgs e) { var row = GetSelectedRow(); if (row != null) { Counter c = (Counter)row.Tag; DialogEdit edit = new DialogEdit(c, "编辑"); DialogResult result = edit.ShowDialog(); if (result == DialogResult.OK) { UpdateRow(row); ManualCounter.Save(); } } }
/// <summary> /// 更新某行的数据 /// </summary> private void UpdateRow(DataGridViewRow row, bool needSave = false) { counterView.SuspendLayout(); row.SetValues(null, null, null, null); Counter c = (Counter)row.Tag; CounterHolder.UpdateCounter(c); if (c != null) { row.SetValues( CounterHolder.FrequencyName[c.ResetFrequency], c.Content, c.ProgressText, c.ButtonText ); } counterView.ResumeLayout(); if (needSave) { ManualCounter.Save(); } }
/// <summary> /// 关闭74前保存数据 /// </summary> private void Parent_FormClosing(object sender, FormClosingEventArgs e) { CounterHolder.UpdateCounter(); ManualCounter.Save(); }