ご教授お願いいたします。
DateTimePickerを使って、こちらが指定した日付を表示させようと思っているのですが、うまく表示できないです。
同じフォーム内に、2つDateTimePickerがあり、
1つ目を『dtp1』、2つ目を『dtp2』と指定しました。
次にRadioButtonを1つ用意し、名前を『rbt1』としました。
次に、dtp1の日付を選択、その後ラジオボタンをクリックすると、
dtp1から1週間後の日をdtp2に表示させようとしております。
そのための文章は下記の通りとなります。
Private Sub rbt1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbt1.CheckedChanged
If rbt1.Checked = True Then
Dim dt1, dt2 As Date
dt1 = dtp1.Value
dt2 = dtp2.Value
MessageBox.Show("表示変更を確認" & dt2, "確認")
Dim dtDay As Date
dtDay = DateAdd(DateInterval.Day.Day, 7, dt1)
MessageBox.Show("表示変更を確認 dtDay=" & dtDay, "確認")
Dim y As String = Year(dtDay)
Dim m As String = Month(dtDay)
Dim d As String = Microsoft.VisualBasic.Day(dtDay)
MessageBox.Show("表示変更を確認 y=" & y & "m=" & m & "d=" & d, "確認")
dt2 = New DateTime(y, m, d)
MessageBox.Show("表示変更を確認 dt2=" & dt2 , "確認")
End If
End Sub
という文章を作りました。
最後のメッセージボックスにはちゃんとdtp1+1週間後の日付が表示されました。
それをうまくdtp2に表示する方法を教えていただきたく思います。
よろしくお願いいたします。
>最後のメッセージボックスにはちゃんとdtp1+1週間後の日付が表示されました。
>それをうまくdtp2に表示する方法を教えていただきたく思います。
DateTimePicker2.Value = dt2 でしょうか。
DateTimePicker2.Value = DateTimePicker1.Value.AddDays(7)
でいいような気もしますが。
Dantiさん。すばやい対応ありがとうございます。
>DateTimePicker2.Value = dt2 でしょうか。
その通りです。
そして、
dtp2.Value = dtp1.Value.AddDays(7)
で無事表示されました。
正直・・・これでよかったんだ〜と自分の知識の少なさを攻めました。
dtp2とはDateTimePicker2のこと
dtp1とはDateTimePicker1の事です。
ありがとうございました。
ツイート | ![]() |