private void appointments_datagridview_CellContentClick_1(object sender, DataGridViewCellEventArgs e)
        {
            var senderGrid = (DataGridView)sender;

            if (senderGrid.Columns[e.ColumnIndex] is DataGridViewButtonColumn &&
                e.RowIndex >= 0 && senderGrid.Columns[e.ColumnIndex].ToString() == this.appointments_datagridview.Columns["EditAppointment"].ToString())
            {
                DataGridViewRow selectedAppointment = this.appointments_datagridview.CurrentRow;
                int             appointmentID       = int.Parse(this.appointments_datagridview.Rows[e.RowIndex].Cells["AppointmentID"].Value.ToString());
                Appointment     appointment         = this.appointmentController.GetAppointmentByID(appointmentID);
                EditAppointment editAppointment     = new EditAppointment();
                editAppointment.PopulateEditAppointmentFields(appointment);
                if (!(appointment.Scheduled_Date < DateTime.Now))
                {
                    DialogResult result = editAppointment.ShowDialog();
                    if (result == DialogResult.OK)
                    {
                        this.Reset_Button_Click(sender, e);
                    }
                }
                else
                {
                    MessageBox.Show("This appointment has passed. Cannot Edit.");
                }
            }
        }