选择时如何在Datetimepicker控件中获取两个日历 [英] how to get two calendars in Datetimepicker control when it selected
问题描述
先生,
我在Windows应用程序中使用DateTimePicker
控件.
如果选择DateTimePicker
,将显示.
我的要求是显示两个日历,分别是当月和下个月.
当我选择DateTimePicker
时,我将MonthCalender
放在了DateTimePicker
下.它也显示了自己的压光机.并且MonthCalender
的选定值没有进入
DateTimePicker
.
有什么办法可以帮助我.
谢谢&问候
Sir,
I am using DateTimePicker
control in Windows Application.
If I select DateTimePicker
is displayed.
My requirement is to display two calenders, those are current month and next month.
I placed MonthCalender
under the DateTimePicker
When I select DateTimePicker
It''s own calender also displayed. and also MonthCalender
''s selected value is not getting in
DateTimePicker
.
Is there any way please help me.
Thanks & Regards
推荐答案
private void form1_load(...)
{
dateTimePicker1.Value = DateTime.Now.AddDays(30);
}
MonthCalendar mc = new MonthCalendar();
private void dateTimePicker1_DropDown(object sender, EventArgs e)
{
mc.DateChanged +=new DateRangeEventHandler(mc_DateChanged); //add new event handler
mc.MouseEnter +=new EventHandler(mc_MouseEnter);
mc.Location = new Point(dateTimePicker1.Location.X + dateTimePicker1.Size.Width , dateTimePicker1.Location.Y +20);
this.Controls.Add(mc);
mc.Show();
}
private void mc_MouseEnter(object sender, EventArgs e)
{
mc.BringToFront();
mc.Focus();
}
private void mc_DateChanged(object sender, DateRangeEventArgs e)
{
mc.Hide();
dateTimePicker1.Value = e.Start;
}
private void dateTimePicker1_CloseUp(object sender, EventArgs e)
{
//cln.Hide(); //just for timebeing
}
希望我终于解决了你的问题.对它进行投票,然后将其标记为已解决.
I hope I have finally solved your question. Vote for it if it worked and then mark it as solved.
hi
最后我得到了所有解决方案.我将此解决方案发送给所有人,以备将来使用.
首先在DateTimepicker中添加一个图片框.在图片框内添加图片,该图片看上去是\/即包含在日期时间选择器的末尾.
在表单加载中隐藏monthcalender.图片框点击事件显示monthcalender.
请参阅此处的代码
hi
to all I got finally solution. I send this solution to all for future use.
First of all add a picturebox inside DateTimepicker. Add a image inside a picture box That image look \/ i.e at the end of datetime picker what is contains.
In form load hide monthcalender. Picture-box click event show monthcalender.
See The code here
private void Form1_Load(object sender, EventArgs e)
{
monthCalendar1.Hide();
}
private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
{
monthCalendar1.SetDate(dateTimePicker1.Value);
}
private void monthCalendar1_DateSelected(object sender, DateRangeEventArgs e)
{
dateTimePicker1.Value = Convert.ToDateTime(monthCalendar1.SelectionStart.ToShortDateString());
monthCalendar1.Hide();
}
private void Form1_MouseDown(object sender, MouseEventArgs e)
{
monthCalendar1.Hide();
}
private void dateTimePicker1_MouseDown(object sender, MouseEventArgs e)
{
monthCalendar1.Hide();
}
private void pictureBox1_Click(object sender, EventArgs e)
{
monthCalendar1.Show();
monthCalendar1.Focus();
}
private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
{
dateTimePicker1.Value = Convert.ToDateTime(monthCalendar1.SelectionStart.ToShortDateString());
}
}
}
这完全符合我的要求.请观看此
This is exact for my requirement Please watch This
这篇关于选择时如何在Datetimepicker控件中获取两个日历的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!