Hola yo lo hice en el .Net 2002, supongo que debe ser lo mismo aqui esta el codigo.
Agregas en tiempo de diseño el StatusBar, yo lo puse de nombre: stBarTimeDate
Declaras dos variables globales en la clase del formulario:
Private PanelTime As New StatusBarPanel()
Private PanelDate As New StatusBarPanel()
En el Evento que carga el formulario(Form_Load) colocas esto:
'caragando los satatus panel para la hora
PanelTime.BorderStyle = StatusBarPanelBorderStyle.Sunken
PanelTime.AutoSize = StatusBarPanelAutoSize.Spring
PanelTime.Alignment = HorizontalAlignment.Right
'cargando los Status para la Fecha
PanelDate.BorderStyle = StatusBarPanelBorderStyle.Raised
PanelDate.ToolTipText = System.DateTime.Today.ToShortDateString()
PanelDate.Text = System.DateTime.Today.ToLongDateString()
PanelDate.AutoSize = StatusBarPanelAutoSize.Contents
'llenandolos al statusBar
stBarTimeDate.ShowPanels = True 'para q muestre varios paneles
stBarTimeDate.Panels.Add(PanelTime)
stBarTimeDate.Panels.Add(PanelDate)
'para que cambie la hora y la fecha
TmrStatus.Start()
Para que la hora cambien constatemente en el statusBar tienes que usar un timer y su evento tick pones esto:
Dim myTime As String = ""
Dim myState As String = " "
Dim myHor As Integer
Dim myMin As String
Dim mySec As String
With Now()
myHor = IIf(.Hour > 12, .Hour Mod 12, .Hour)
myState += IIf(.Hour >= 12, "p", "a") & ".m. "
myMin = IIf(.Minute > 10, "", "0") & .Minute
mySec = IIf(.Second > 10, "", "0") & .Second
myTime += myHor & ":" & myMin & ":" & mySec & myState
End With
PanelTime.Text = myTime
Si quieres ser mas estricto, el cargado de la fecha, tambien deberias hacerlo en el timer, si una aplicacion va estar abierta por varios dias seguidos no cambiara al estar cargado en el Load, tiene que estar cargado en el timer....