如何将datetimepicker值自动设置为所选月份的第一个月份?

如何将datetimepicker值自动设置为所选月份的第一个月份?

问题描述:

当我检查monthwise radiobtn datetimepicker值应自动设置为选定月份的第一天。如何将datetimepicker值自动设置为所选月份的第一个月份?

如何做到这一点?

试图

dtpDate.value=new Date(1:MM:YYYY) 

,但工作不正常..

你可以试试这个:

dtpDate.Value = Now.Date.AddDays(-(Now.Day) + 1) 

Date.AddDays将指定天数添加到日期提到

Now.Day将给当天

dtpDate.Value = Now.Date.AddDays(-(Now.Day) + 1)将始终指向当前月的第一天

更新:设定的日期选定本月01上月的变化

Private Sub DateTimePicker1_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DateTimePicker1.ValueChanged 
    DateTimePicker1.Value = CDate("01/" & DateTimePicker1.Value.Month & "/" & DateTimePicker1.Value.Year) 
    End Sub 
+0

我想是这样的。如果我选择MARCH,DTPVALUE应该去3月1日。就像我需要设置。可能吗? – Indrah 2014-10-30 05:44:02

+0

有没有什么办法从使用vb.net的datetimepicker中提取日期,月份部分。以便我可以设置日期 – Indrah 2014-10-30 06:01:26

+0

请参阅我的回答 – 2014-10-30 06:16:18

只需使用DateTime Constructor创建一个新的日期值使用1作为月份的日期并将日期时间选择器设置为该值:

dtpDate.Value = New DateTime(dtpDate.Value.Year, dtpDate.Value.Month, 1) 
+0

加上使用内置的构造函数 – 2016-01-07 00:31:06

I h大家发现答案非常有用和非常简单。我已经提供了下面的链接。

Getting first and last day of the current month

DateTime now = DateTime.Now; 
var startDate = new DateTime(now.Year, now.Month, 1); 
var endDate = startDate.AddMonths(1).AddDays(-1); 

最初发布马尔辛Juraszek(https://*.com/users/1163867/marcinjuraszek