private void btnRemove_Click(object sender, EventArgs e) { if (listGearBox.SelectedItems.Count > 0) { GearBox gearBoxToDelete = new GearBox(); gearBoxToDelete = (GearBox)listGearBox.SelectedItems[0]; foreach (GearBox gb in Program.gearBoxList) { if (gb.Equals(gearBoxToDelete)) { gearBoxToDelete = gb; } } Program.gearBoxList.Remove(gearBoxToDelete); Database1DataSet1TableAdapters.GearBoxTableAdapter gbta = new Database1DataSet1TableAdapters.GearBoxTableAdapter(); gbta.Delete(gearBoxToDelete.ID, gearBoxToDelete.Name, gearBoxToDelete.Alpha, gearBoxToDelete.AxesDistance, gearBoxToDelete.GearModule, gearBoxToDelete.InputTorque, gearBoxToDelete.OutputTorque, gearBoxToDelete.TorqueRatio, gearBoxToDelete.InputGear.ID, gearBoxToDelete.OutputGear.ID); } refreshList(); treeViewGearBox.Nodes.Clear(); propertyGridGearBox.SelectedObject = null; this.btnRemove.Enabled = false; this.btnEdit.Enabled = false; }