Как показать диалоговое окно DateTimePicker, когда пользователь нажимает кнопку (без добавления элемента управления в форму) - PullRequest
1 голос
/ 28 мая 2011

Я пытаюсь сделать так, чтобы, когда пользователь нажимал кнопку, отображалось диалоговое окно DateTimePicker, и я бы даже хотел получить итоговую дату, которую он выбрал. Вот что у меня есть:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim Dis As System.Windows.Forms.DateTimePicker = New System.Windows.Forms.DateTimePicker()

    ' Set the MinDate and MaxDate.
    Dis.MinDate = New DateTime(1985, 6, 20)
    Dis.MaxDate = DateTime.Today

    ' Set the CustomFormat string.
    Dis.CustomFormat = "MMMM dd, yyyy - dddd"
    Dis.Format = Windows.Forms.DateTimePickerFormat.Custom

    ' Show the CheckBox and display the control as an up-down control.
    Dis.ShowCheckBox = True
    Dis.ShowUpDown = True

    Dis.Show()

End Sub

Но когда я нажимаю кнопку и запускаю код, ничего не отображается. Я думаю, что должен быть способ просто отобразить это диалоговое окно программно. Кто-нибудь может мне помочь? : -)

Просто к вашему сведению, я пишу это в VB 2010, если это поможет? : - \

Ответы [ 2 ]

5 голосов
/ 28 мая 2011

В vb.net DateTimePicker не является диалоговым окном, подобным OpenFileDialog, SaveFileDialog, PrintDialog или другими подобными диалоговыми окнами.

Несмотря на «всплывающий» внешний вид, DateTimePicker является объектом управления, и поэтому он должен быть помещен (добавлен) в форму или окно, прежде чем его можно будет отобразить и использовать.

0 голосов
/ 23 июня 2011

В итоге я сделал кнопку, которая открывает отдельную форму, которую я сделал в виде диалога, и добавил DateTimePicker.Это был лучший обходной путь, который я мог понять, как это сделать.

...