public void UpDateDataGrid(EmployeesTree tree = null) { while (dgvEmployeeTable.Rows.Count > 1) { for (int i = 0; i < dgvEmployeeTable.Rows.Count - 1; i++) { dgvEmployeeTable.Rows.Remove(dgvEmployeeTable.Rows[i]); } } DisplayTree(tree.root); LoadPositionsFromDataBase(cbPositions); }
public void Find(Node currentNode, string position, EmployeesTree positionTree) { if (currentNode == null) { return; } if (currentNode.data.position == position) { positionTree.Add(currentNode.data); } Find(currentNode.left, position, positionTree); Find(currentNode.right, position, positionTree); }
private void bFilter_Click(object sender, EventArgs e) { EmployeesTree onePositionTree = new EmployeesTree(); string position = cbPositions.Text.Substring(0, 1).ToUpper() + cbPositions.Text.Remove(0, 1); tree.Find(position, onePositionTree); if (onePositionTree.root != null) { DisplayTree(onePositionTree.root); UpDateDataGrid(onePositionTree); } else { MessageBox.Show("Информация о сотрудниках данной должности не найдена!"); } onePositionTree = null; }
public void Find(string position, EmployeesTree positionTree) { Find(root, position, positionTree); }