На самом деле у меня есть два вопроса. Когда пользователь щелкает стрелки для изменения месяцев, автоматически выбирается 1. текущего месяца. Можно ли предотвратить такое поведение, чтобы date_changed сначала срабатывала, когда пользователь нажимает на фактическую дату?
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
{
this.Close();
}
}
Я поместил свой MonthCalendar в отдельную форму. При нажатии кнопки открывается эта форма, и пользователь может выбрать дату. В событии date_changed я хочу, чтобы форма закрылась, поэтому я выполнил this.Close (), но это вызывает сбой приложения, и я получаю исключение ObjectDisposedException:
Нет доступа к удаленному объекту. Имя объекта: 'MonthCalendar'
Как мне закрыть форму?
РЕДАКТИРОВАТЬ:
public partial class Form1 : Form
{
Form2 frm2;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
frm2 = new Form2();
frm2.theForm = this;
frm2.Show();
}
public void closeAform()
{
frm2.Close();
}
}
public partial class Form2 : Form
{
public Form1 theForm { get; set; }
public Form2()
{
InitializeComponent();
}
private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
{
theForm.closeAform();
}
}