private void Clear_Click(object sender, EventArgs e) { DialogResult Result = MessageBox.Show("Вы действительно хотите очистить планирование счёта?", "Подтвердите действие", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (Result == DialogResult.Yes) { StreamWriter sw = new StreamWriter(@"PlanningList.txt", false); sw.WriteLine("0"); sw.Close(); PlanningList.Clear(); n = 0; } }
public Planning_Screen() { InitializeComponent(); StreamReader sr = null; try { sr = new StreamReader(@"CurrentStateList.txt"); account = float.Parse(sr.ReadLine()); sr.Close(); } catch { MessageBox.Show("Произошла ошибка при загрузке данных. Текущее состояние счёта будет очищено, приложение перезагружено.", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Stop); StreamWriter sw = new StreamWriter(@"CurrentStateList.txt", false); sw.Write(""); sw.Close(); Application.Restart(); } Today.Text = DateTime.Today.ToShortDateString(); Account.Text = Math.Round(account, 2).ToString() + " руб."; Date.MinDate = DateTime.Today; try { sr = new StreamReader(@"PlanningList.txt"); } catch { FileStream fs = File.Create(@"PlanningList.txt"); StreamWriter sw = new StreamWriter(fs); sw.WriteLine("0"); sw.Close(); fs.Close(); sr = new StreamReader(@"PlanningList.txt"); } if (!int.TryParse(sr.ReadLine(), out n)) { return; } PlanningRecord = new Planning_Record[n]; for (int i = 0; i < n; i++) { PlanningRecord[i] = new Planning_Record(); if (!PlanningRecord[i].Read(sr)) { MessageBox.Show("Произошла ошибка при загрузке данных. " + "Планирование счёта будет очищено.", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Stop); sr.Close(); StreamWriter sw = new StreamWriter(@"PlanningList.txt", false); sw.WriteLine("0"); sw.Close(); //for (int j = PlanningList.Items.Count - 1; i > 0; i--) // PlanningList.Items[i].Remove(); PlanningList.Clear(); n = 0; return; } PlanningList.Items.Add(PlanningRecord[i].GetCategory); PlanningList.Items[PlanningList.Items.Count - 1].Font = new Font("Century Gothic", 10, FontStyle.Bold); string amount = PlanningRecord[i].GetIncrease ? "+" : "-"; amount += PlanningRecord[i].GetAmount + " руб."; PlanningList.Items.Add(amount); PlanningList.Items[PlanningList.Items.Count - 1].Font = new Font("Century Gothic", 15, FontStyle.Bold); PlanningList.Items[PlanningList.Items.Count - 1].ForeColor = PlanningRecord[i].GetIncrease ? Color.FromArgb(0, 142, 63) : Color.FromArgb(144, 12, 10); //зеленый : красный PlanningList.Items[PlanningList.Items.Count - 1].UseItemStyleForSubItems = false; //для правильного окончания слов "раз" и "день" string result = ""; string temp = PlanningRecord[i].GetTimes.ToString(); if (temp == "11" || temp == "12" || temp == "13" || temp == "14") { result = temp + " раз в "; } else if (temp[temp.Length - 1] == '2' || temp[temp.Length - 1] == '3' || temp[temp.Length - 1] == '4') { result = temp + " раза в "; } else { result = temp + " раз в "; } temp = PlanningRecord[i].GetDays.ToString(); if (temp == "1") { result += "день"; } else if (temp == "11" || temp == "12" || temp == "13" || temp == "14") { result += temp + " дней"; } else { switch (temp[temp.Length - 1]) { case '1': result += temp + " день"; break; case '2': result += temp + " дня"; break; case '3': result += temp + " дня"; break; case '4': result += temp + " дня"; break; default: result += temp + " дней"; break; } } PlanningList.Items[PlanningList.Items.Count - 1].SubItems.Add(result); PlanningList.Items.Add(PlanningRecord[i].GetComment); PlanningList.Items[PlanningList.Items.Count - 1].Font = new Font("Century Gothic", 10); } sr.Close(); }