// Handles projectBox selection. private void ProjectBox_SelectedIndexChanged(object sender, EventArgs e) { if (projectBox.SelectedValue != null) { ProjectAssignData current = projectBox.SelectedValue as ProjectAssignData; } }
// Getting a complete object list containing all project assign data. public BindingList <ProjectAssignData> AssignList() { using (SqlConnection conn = new SqlConnection(conStr)) { conn.Open(); BindingList <ProjectAssignData> list = new BindingList <ProjectAssignData>(); string sql = "Execute AssignList "; Console.WriteLine(sql); using (SqlCommand command = new SqlCommand(sql, conn)) { using (SqlDataReader reader = command.ExecuteReader()) { while (reader.Read()) { ProjectAssignData project = new ProjectAssignData { ProjectAssignID = reader.GetInt32(0), ProjectID = reader.GetInt32(1), EmployeeID = reader.GetInt32(2), RoleID = reader.GetInt32(3), ProjectName = reader.GetString(4), EmployeeName = reader.GetString(5), Role = reader.GetString(6), StartDate = reader.GetDateTime(7), EndDate = reader.GetDateTime(8), Remark = reader.GetString(9) }; list.Add(project); } } } return(list); } }
// Event that fires when a row is left, AFTER validating, firing after CellEditEnd events. Create new data for changedList. private void DataProjectAssign_RowValidating(object sender, DataGridViewCellCancelEventArgs e) { for (int i = 0; i < dataProjectAssign.Rows[e.RowIndex].Cells.Count; i++) { dataProjectAssign[i, e.RowIndex].Style.BackColor = Color.Empty; } if (dataProjectAssign.IsCurrentRowDirty) { newdata = new ProjectAssignData { ProjectAssignID = Convert.ToInt32(dataProjectAssign.CurrentRow.Cells["ProjectAssignID"].Value), ProjectID = this.ProjectID, EmployeeID = this.EmployeeID, RoleID = this.ProjectRoleID, ProjectName = this.ProjectName, EmployeeName = this.EmployeeName, Role = this.Role, Remark = this.Remark, StartDate = this.StartDate, EndDate = this.EndDate }; ChangedList.Add(newdata); Console.WriteLine("Data changes saved."); } }
// Save the changed datas to the database. public void UpdateAssign(ProjectAssignData projectAssign) { using (SqlConnection conn = new SqlConnection(conStr)) { conn.Open(); string sql = "UpdateAssign @paID , @pID , @eID , @rID , @startDate , @endDate , @remark"; Console.WriteLine(sql); using (SqlCommand command = new SqlCommand(sql, conn)) { command.Parameters.Add("@paID", SqlDbType.Int).Value = projectAssign.ProjectAssignID; command.Parameters.Add("@pID", SqlDbType.Int).Value = projectAssign.ProjectID; command.Parameters.Add("@eID", SqlDbType.Int).Value = projectAssign.EmployeeID; command.Parameters.Add("@rID", SqlDbType.Int).Value = projectAssign.RoleID; command.Parameters.Add("@startDate", SqlDbType.Date).Value = projectAssign.StartDate; command.Parameters.Add("@endDate", SqlDbType.Date).Value = projectAssign.EndDate; command.Parameters.Add("@remark", SqlDbType.NVarChar).Value = projectAssign.Remark; command.ExecuteNonQuery(); } } }