У меня на самом деле два вопроса. Когда пользователь нажимает стрелки, чтобы изменить месяцы, автоматически выбирается число 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'
Как мне закрыть форму?
EDIT:
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();
}
}