honag luc

honag luc

  • NA
  • 123
  • 8.9k

Auto map time and room to datagridview C#

Feb 17 2023 10:03 AM

I want to look at the datagridview to know what time of the meeting is as shown in the picture. after selecting the start time and end time and choose the room
will automatically fill in the datagridview and have the background as shown. but the following code does not get that position, hope everyone can help.

private void selectAreaColor()
{
    string starttime1 = cboStarttime.Text;
    string stoptime1 = cboStoptime.Text;
    // Get the start time and end time inputs and the selected meeting room
    DateTime startTime =DateTime.ParseExact( starttime1,"HH:mm",null);
    DateTime endTime = DateTime.ParseExact(stoptime1,"HH:mm",null);
    string selectedRoom = cboRoom.SelectedItem.ToString();

    // Loop through the rows in the DataGridView and find the matching row
    foreach (DataGridViewRow row in grdMeeting.Rows)
    {
        if (row.Cells[0].Value.ToString() == selectedRoom)
        {
            // Loop through the columns and compare the start and end times with the time slots
            for (int i = 1; i < grdMeeting.Columns.Count; i++)
            {
                DateTime columnTime = DateTime.ParseExact(grdMeeting.Columns[i].HeaderText, "HH:mm", null);
                if (startTime == columnTime || endTime == columnTime)
                {
                    //MessageBox.Show("Are you OK ");
                    
                    grdMeeting.CurrentCell.Style.BackColor = Color.Blue;//Can't get the location to create the background
                    return;
                }   
            }   
        }   
    }
}


Answers (2)