public FormRowStatistic(string table, DataGridViewSelectedCellCollection selectedCells) { InitializeComponent(); using (var context = new BotanicalGardenContext()) { int key = int.Parse(selectedCells[0].Value.ToString()); switch (table) { case "Tree": DataGridView.DataSource = context.Statistics.Where(s => s.TreeId == key).ToList(); break; case "Plant": DataGridView.DataSource = context.Statistics.Where(s => s.PlantId == key).ToList(); break; } DataGridView.Columns["Tree"].Visible = false; DataGridView.Columns["Plant"].Visible = false; DataGridView.Columns["Plant"].Visible = false; DataGridView.Columns["Id"].HeaderText = "№"; DataGridView.Columns["DateTime"].HeaderText = "Дата/Время"; DataGridView.Columns["LivingСonditions"].HeaderText = "Условия обитания"; DataGridView.Columns["Сondition"].HeaderText = "Состояние"; DataGridView.Columns["Population"].HeaderText = "Популяция"; DataGridView.Columns["TreeId"].Visible = false; DataGridView.Columns["PlantId"].Visible = false; DataGridView.Refresh(); } }
private void BSave_Click(object sender, EventArgs e) { var dateTime = TBDateTime.Text; var livingСonditions = TBLivingСonditions.Text; var condition = TBCondition.Text; var population = TBPopulation.Text; var key = TreeView.SelectedNode != null?int.Parse(TreeView.SelectedNode.Name) : -1; if (dateTime.Equals("") || livingСonditions.Equals("") || condition.Equals("") || population.Equals("") || key == -1) { MessageBox.Show("Укажите все параметры", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } var stat = new Statistic(); using (var context = new BotanicalGardenContext()) { switch (param) { case ActionParameters.AddStatistics: stat.DateTime = Convert.ToDateTime(dateTime); stat.LivingСonditions = livingСonditions; stat.Сondition = condition; stat.Population = int.Parse(population); if (RBTree.Checked) { stat.TreeId = key; } if (RBPlant.Checked) { stat.PlantId = key; } context.Statistics.Add(stat); break; case ActionParameters.EditStatistics: stat = context.Statistics.Find(selectedCells[0].Value); stat.DateTime = Convert.ToDateTime(dateTime); stat.LivingСonditions = livingСonditions; stat.Сondition = condition; stat.Population = int.Parse(population); if (RBTree.Checked) { stat.TreeId = key; stat.PlantId = null; } if (RBPlant.Checked) { stat.PlantId = key; stat.TreeId = null; } break; } context.SaveChanges(); } Hide(); fsClass.InitDGVStatistics(); }
private void ButtonSave_Click(object sender, EventArgs e) { var name = TBName.Text; var type = TBType.Text; var family = TBFamily.Text; var rod = TBRod.Text; using (var context = new BotanicalGardenContext()) { switch (param) { case ActionParameters.AddTree: context.Trees.Add(new Tree { Name = name, View = type, Family = family, Rod = rod }); break; case ActionParameters.AddPlant: context.Plants.Add(new Plant { Name = name, Type = type }); break; case ActionParameters.EditTree: var tree = context.Trees.Find(selectedCells[0].Value); tree.Name = name; tree.View = type; tree.Family = family; tree.Rod = rod; context.Entry(tree).State = EntityState.Modified; break; case ActionParameters.EditPlant: var plant = context.Plants.Find(selectedCells[0].Value); plant.Name = name; plant.Type = type; context.Entry(plant).State = EntityState.Modified; break; } context.SaveChanges(); } Hide(); switch (param) { case ActionParameters.AddTree: case ActionParameters.EditTree: fsClass.InitDGVTree(); break; case ActionParameters.AddPlant: case ActionParameters.EditPlant: fsClass.InitDGVPlants(); break; } }
public void InitDGVPlants() { using (var context = new BotanicalGardenContext()) { context.Plants.Load(); DGVPlant.DataSource = context.Plants.Local.ToBindingList(); DGVPlant.Columns["Statistics"].Visible = false; DGVPlant.Columns["Id"].HeaderText = "№"; DGVPlant.Columns["Name"].HeaderText = "Название"; DGVPlant.Columns["Type"].HeaderText = "Разновидность"; DGVPlant.Refresh(); } }
private void RadioButton_CheckedChanged(object sender, EventArgs e) { using (var context = new BotanicalGardenContext()) { TreeView.Nodes.Clear(); if (RBTree.Checked) { var listTree = context.Trees.ToList(); switch (param) { case ActionParameters.AddStatistics: listTree.ForEach(item => { TreeView.Nodes.Add(item.Id.ToString(), item.Id + " | " + item.Name + " | " + item.View); }); break; case ActionParameters.EditStatistics: var tree = selectedCells[5].Value; listTree.ForEach(item => { var tn = TreeView.Nodes.Add(item.Id.ToString(), item.Id + " | " + item.Name + " | " + item.View); if (tree != null && item.Id == (int)tree) { SelectedNode(tn); } }); break; } } if (RBPlant.Checked) { var listPlants = context.Plants.ToList(); switch (param) { case ActionParameters.AddStatistics: listPlants.ForEach(item => { TreeView.Nodes.Add(item.Id.ToString(), item.Id + " | " + item.Name + " | " + item.Type); }); break; case ActionParameters.EditStatistics: var plants = selectedCells[7].Value; listPlants.ForEach(item => { var tn = TreeView.Nodes.Add(item.Id.ToString(), item.Id + " | " + item.Name + " | " + item.Type); if (plants != null && RBPlant.Checked && item.Id == (int)plants) { SelectedNode(tn); } }); break; } } } }
public void InitDGVTree() { using (var context = new BotanicalGardenContext()) { context.Trees.Load(); DGVTree.DataSource = context.Trees.Local.ToBindingList(); DGVTree.Columns["Statistics"].Visible = false; DGVTree.Columns["Id"].HeaderText = "№"; DGVTree.Columns["Name"].HeaderText = "Название"; DGVTree.Columns["View"].HeaderText = "Вид"; DGVTree.Columns["Family"].HeaderText = "Семейство"; DGVTree.Columns["Rod"].HeaderText = "Род"; DGVTree.Refresh(); } }
public void InitDGVStatistics() { using (var context = new BotanicalGardenContext()) { context.Statistics.Load(); DGVStatistics.DataSource = context.Statistics.Local.ToBindingList(); DGVStatistics.Columns["Tree"].Visible = false; DGVStatistics.Columns["Plant"].Visible = false; DGVStatistics.Columns["Id"].HeaderText = "№"; DGVStatistics.Columns["DateTime"].HeaderText = "Дата/Время"; DGVStatistics.Columns["LivingСonditions"].HeaderText = "Среда обитания"; DGVStatistics.Columns["Сondition"].HeaderText = "Состояние"; DGVStatistics.Columns["Population"].HeaderText = "Количество"; DGVStatistics.Columns["TreeId"].HeaderText = "№ дереа"; DGVStatistics.Columns["PlantId"].HeaderText = "№ растения"; DGVStatistics.Refresh(); } }
private void BDelete_Click(object sender, EventArgs e) { using (var context = new BotanicalGardenContext()) { DialogResult dr = MessageBox.Show("Подтверждение удаления!", "Удаление", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); if (dr == DialogResult.OK) { switch (TabControl.SelectedIndex) { case 0: foreach (DataGridViewRow row in DGVTree.SelectedRows) { var deleteTree = context.Trees.Find(row.Cells[0].Value); deleteTree.Statistics.Clear(); context.Trees.Remove(deleteTree); } context.SaveChanges(); InitDGVTree(); break; case 1: foreach (DataGridViewRow row in DGVPlant.SelectedRows) { var deletePlant = context.Plants.Find(row.Cells[0].Value); deletePlant.Statistics.Clear(); context.Plants.Remove(deletePlant); } context.SaveChanges(); InitDGVPlants(); break; case 2: foreach (DataGridViewRow row in DGVStatistics.SelectedRows) { var deleteStatistics = context.Statistics.Find(row.Cells[0].Value); context.Statistics.Remove(deleteStatistics); } context.SaveChanges(); InitDGVStatistics(); break; } } } }