У меня проблема с DateTimePicker.Как добавить 1 месяц к выбранному DateTimePicker
То, что я в настоящее время пытаюсь сделать, основывается на том, что текст находится в lblPrevSem (предыдущем семестре), который получает свой выбор из раскрывающегося списка на предыдущем экране, я хочу добавить определенное количество времени на DateTimePicker.
Public Property CustomFormat As String
Dim SemesterMonths As Integer
Dim SemesterDays As Integer
Private Sub DeptCreatePrevSch_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim SemesterYear() As String = DeptPrevSch.CboSem.Text.Split(",")
lblPrevSem.Text = SemesterYear(0)
cboYear.Text = Date.Now.Year
For i As Integer = 0 To 5
cboYear.Items.Add(Date.Now.Year + i)
cboYear.SelectedIndex = 0
Next
If InStr(lblPrevSem.Text, "Fall") Then
SemesterMonths = 1
ElseIf InStr(lblPrevSem.Text, "Spring") Then
SemesterMonths = 1
ElseIf InStr(lblPrevSem.Text, "Summer") Then
SemesterDays = 14
End If
Call dtpStart_ValueChanged(sender, e)
End Sub
Private Sub dtpStart_ValueChanged(sender As Object, e As EventArgs) Handles dtpStart.ValueChanged
Dim StartDate As Date
Dim StartStringDate As String
Dim EndDate As Date
Dim EndStringDate As String
dtpStart.Format = DateTimePickerFormat.Custom
dtpStart.CustomFormat = "MMMM dd, yyyy dddd"
StartDate = dtpStart.Value.ToString
StartStringDate = StartDate.ToString("MMMM dd, yyyy dddd")
lblRegStartDate.Text = StartStringDate
EndDate = dtpStart.Value.AddMonths(SemesterMonths)
EndDate = dtpStart.Value.AddDays(SemesterDays)
EndStringDate = EndDate.ToString("MMMM dd, yyyy dddd")
lblRegEndDate.Text = EndStringDate
End Sub
я могу получить его, чтобы добавить в дни просто отлично, но когда-либо я попробовать и добавить в 1 месяц, это, кажется, не работает.
Я пробовал несколько разных способов добавить за 1 месяц, но ничего пока не сработало. Закрытие ive было добавлено через 30 дней, но тогда это не учитывает месяцы, которые имеют 31 день.
Reg Дата начала является то, что когда-либо DateTimePicker является и Reg Дата окончания должны быть добавлены дни, основанные от того, что lblPrevSem является
Оба Reg Start/End Date отображаются в виде меток
(например, Fall = 1 Month, Spring = 1 Month, Summer = 2 Weeks)
Во-первых, это действительно плохая идея назвать событие таким образом, события должны указывать на взаимодействие с пользователем. Поместите код в метод, который может вызвать его из любого места. 'Dim StartDate As Date ... = dtpStart.Value.ToString' заставляет меня думать, что опция Strict не включена. Некоторые из этих свойств dtp могут быть установлены в дизайнере один раз, а не снова и снова в методе – Plutonix
. Я не знал, что они могут быть установлены в дизайнере? –
И я полностью забыл установить опцию строгого режима. Ну, черт побери, все, что работает, и ничего ... вернуться к работе, тогда я думаю .... спасибо, что напомнили мне об этом. –