Пример #1
0
        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            BindingList <string> skills = new BindingList <string>();
            string jobTitle             = myJobsGridView.Rows[e.RowIndex].Cells["Title"].Value.ToString();

            //Checking if view is clicked
            if (e.ColumnIndex == 0)
            {
                //Hiding the editPanel and find the title of the job selected
                editPanel.Visible = false;
                hiddenLbl.Visible = false;

                //Finding all the information about the selected job and initialsing the correspondent txtBoxes
                for (int i = 0; i < myFullJobsList.Count; i++)
                {
                    if (jobTitle == myFullJobsList[i].Title)
                    {
                        skills = new BindingList <string>(service.GetJobSkills(myFullJobsList[i].JobId).ToList());
                        listViewSkills.DataSource = skills;

                        txtBoxStream.Text     = myFullJobsList[i].Stream;
                        txtBoxStatus.Text     = myFullJobsList[i].Status;
                        txtBoxLoc.Text        = myFullJobsList[i].Location;
                        txtBoxDeadline.Text   = myFullJobsList[i].Deadline.ToString();
                        txtBoxDatePosted.Text = myFullJobsList[i].DatePosted.ToString();
                        txtBoxDesc.Text       = myFullJobsList[i].Description;
                        txtBoxCompany.Text    = myFullJobsList[i].Company;
                        txtBoxTitle.Text      = jobTitle;
                        jobId = myFullJobsList[i].JobId;
                    }
                }
                //show the description of selected job
                panelDescription.Visible = true;
                //MessageBox.Show((e.RowIndex + 1) + "  Row  " + (e.ColumnIndex + 1) + "  Column button clicked ");
            }

            //Otherwise Check if the selected column is edit column
            else if (e.ColumnIndex == 1)
            {
                panelDescription.Hide();
                hiddenLbl.Visible = false;
                for (int i = 0; i < myFullJobsList.Count; i++)
                {
                    if (jobTitle == myFullJobsList[i].Title)
                    {
                        skills = new BindingList <string>(service.GetJobSkills(myFullJobsList[i].JobId).ToList());
                        editSkillListBox.DataSource = skills;

                        streamComBox.DataSource   = service.GetStreams();
                        streamComBox.SelectedItem = myFullJobsList[i].Stream;
                        statusComBox.DataSource   = service.GetStatuses();
                        statusComBox.SelectedItem = myFullJobsList[i].Status;
                        editLocTxtBox.Text        = myFullJobsList[i].Location;
                        editDPTxtBox.Text         = myFullJobsList[i].Deadline.ToString();
                        txtBoxDatePosted.Text     = myFullJobsList[i].DatePosted.ToString();
                        editDescTxtBox.Text       = myFullJobsList[i].Description;
                        editCompTxtBox.Text       = myFullJobsList[i].Company;
                        editTitleTxtBox.Text      = jobTitle;
                        deadLinePicker.Value      = myFullJobsList[i].Deadline;
                        editJob.JobId             = myFullJobsList[i].JobId;
                        hiddenLbl.Text            = jobTitle;
                    }
                }
                editPanel.Size           = panelDescription.Size;
                editPanel.Location       = panelDescription.Location;
                panelDescription.Visible = false;
                editPanel.Visible        = true;
            }

            //Otherwise Check if the selected column is delete column
            else if (e.ColumnIndex == 2)
            {
                if (MessageBox.Show("Are you sure You want to delete this job?", "Confirm",
                                    MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    for (int i = 0; i < myFullJobsList.Count; i++)
                    {
                        if (jobTitle == myFullJobsList[i].Title)
                        {
                            DbJob job = new DbJob();
                            job.JobId = myFullJobsList[i].JobId;
                            List <DbJob> jobs = new List <DbJob>();
                            jobs.Add(job);
                            if (service.DeleteJob(jobs, 1))
                            {
                                editPanel.Hide();
                                panelDescription.Hide();
                                fillMyJobsDataGrid();
                                hiddenLbl.ForeColor = Color.Green;
                                hiddenLbl.Text      = "Job successfully deleted. ";
                                hiddenLbl.Visible   = true;
                            }
                            else
                            {
                                hiddenLbl.Text      = "Job delete unsuccessful. ";
                                hiddenLbl.ForeColor = Color.Red;
                                hiddenLbl.Visible   = true;
                            }
                        }
                    }
                }
                else
                {
                    // user clicked no
                }
            }
        }