How can the user pick the date and time if it's read only? You need some clarification there. If you want to display the date and time as read only use a label and the built in tostring functions of the datetime class.
tinstaafl
Nearly a Posting Virtuoso
1,308 posts since Jun 2010
Reputation Points: 341
Solved Threads: 226
Skill Endorsements: 14
I guess if you you have it formatted to a short date format, then allowing the user to invoke the dropdown to show the MonthCalndar may be of some use.
Anyways, making a readonly DTP control is fairly easy.
Public Class ReadOnlyDTP
Inherits DateTimePicker
Public Shadows Property Value() As DateTime
Get
Return MyBase.Value
End Get
Set(ByVal value As DateTime)
' Need to set values in correct order
' to prevent internal validation error
Select Case value
Case Is < MyBase.Value
MyBase.MinDate = value
MyBase.Value = value
MyBase.MaxDate = value
Case Is > MyBase.Value
MyBase.MaxDate = value
MyBase.Value = value
MyBase.MinDate = value
End Select
End Set
End Property 'Value
Const WM_Char As Int32 = &H102
Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
' prevent keyboard changes to the fields
If m.Msg = WM_Char Then Exit Sub
MyBase.WndProc(m)
End Sub
End Class
Add this to your project, build the project and it should showup in your ToolBox if your VS is configured to do so (it is the default setting).
TnTinMN
Practically a Master Poster
640 posts since Jun 2012
Reputation Points: 418
Solved Threads: 148
Skill Endorsements: 13
then allowing the user to invoke the dropdown to show the MonthCalndar may be of some use
Yeah I can see that. You could use the ValueChanged event to reset the value to what you need, and just ignore the users input.
tinstaafl
Nearly a Posting Virtuoso
1,308 posts since Jun 2010
Reputation Points: 341
Solved Threads: 226
Skill Endorsements: 14