public TaskWindow(int boardID, int?taskID, KanbanBoardWindow board) { InitializeComponent(); this.boardID = boardID; this.board = board; // Hide warning labels hideWarningLabels(); if (taskID.HasValue) { // get column position this.taskID = taskID.Value; int columnPos = TaskDO.GetTask(this.taskID).ColumnPos - 1; // Set combobox values comboBox.ItemsSource = ColumnsDO.GetBoardColumnNames(boardID); comboBox.SelectedIndex = columnPos; // Fill the fields fillFields(this.taskID); } else { this.taskID = 0; // set combobox values comboBox.ItemsSource = ColumnsDO.GetBoardColumnNames(boardID); comboBox.SelectedIndex = 0; } }
// Method for saving task info private void saveTaskInformationButton_Click(object sender, RoutedEventArgs e) { hideWarningLabels(); if (verifyBoardNameInput() == true) { // get chosen column ID int colPos = comboBox.SelectedIndex + 1; int colID = ColumnsDO.GetColumnID(boardID, colPos); if (this.taskID == 0) { // If task is new - create one TaskDO.CreateTask(colID, taskNameInput.Text, taskDescriptionInput.Text); this.Close(); this.board.LoadBoard(boardID); } else { // if task was already created update info TaskDO.UpdateTask(this.taskID, colID, taskNameInput.Text, taskDescriptionInput.Text); this.Close(); this.board.LoadBoard(boardID); } } }
// Set bindings on objects private void setDataBindings() { // Bing grid and list views to board data object boardGridView.DataContext = BoardsDO.GetBoard(this.boardID); // Bind columns to DO firstColumn.DataContext = ColumnsDO.GetBoardColumns(this.boardID)[0]; secondColumn.DataContext = ColumnsDO.GetBoardColumns(this.boardID)[1]; thirdColumn.DataContext = ColumnsDO.GetBoardColumns(this.boardID)[2]; // Bind list views to taskDO firstColumnView.ItemsSource = TaskDO.GetListOfTasks(ColumnsDO.GetColumnID(this.boardID, 1)); secondColumnView.ItemsSource = TaskDO.GetListOfTasks(ColumnsDO.GetColumnID(this.boardID, 2)); thirdColumnView.ItemsSource = TaskDO.GetListOfTasks(ColumnsDO.GetColumnID(this.boardID, 3)); }
// Method creates columns in boards private void createColumnsButton_Click(object sender, RoutedEventArgs e) { // Hide warning labels hideColumnsWarningLabels(); // Verify input if (verifyColumnsInput(getColumnNames()) == true) { ColumnsDO.CreateColumns(BoardsDO.GetBoardID(myBoard.BoardName), getColumnNames()); // Create Board Window KanbanBoardWindow kanbanBoardWindow = new KanbanBoardWindow(BoardsDO.GetBoardID(myBoard.BoardName)); // Closes Create Board WIndow this.Close(); // Show Kanban Board Window kanbanBoardWindow.Top = 100; kanbanBoardWindow.Left = 150; kanbanBoardWindow.Show(); } ; }