Hi…

I’ve got problem with my form application:

Datetimepicker notifying icons won't refresh on changing of datetime value during run-time,it’s only change when the form closed and reopened...


Code:
Public Class Form1
    Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        My.Settings.Save()
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        Me.DateTimePicker1.DataBindings.Add(New System.Windows.Forms.Binding("Value", _
        Global.DateTimeAlert.My.MySettings.Default, "Date1", _
        True, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged))

        Me.DateTimePicker2.DataBindings.Add(New System.Windows.Forms.Binding("Value", _
        Global.DateTimeAlert.My.MySettings.Default, "Date2", _
        True, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged))

        Me.DateTimePicker3.DataBindings.Add(New System.Windows.Forms.Binding("Value", _
        Global.DateTimeAlert.My.MySettings.Default, "Date3", _
        True, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged))

        ShowErrorIcon(DateTimePicker1)
        ShowErrorIcon(DateTimePicker2)
        ShowErrorIcon(DateTimePicker3)

    End Sub

    Private Sub ShowErrorIcon(ByVal dtPicker As DateTimePicker)

        Dim errProvider As ErrorProvider

        Try
            errProvider = New ErrorProvider
            errProvider.SetIconPadding(dtPicker, 5)

            Select DateDiff(DateInterval.Day, Now, dtPicker.Value)
                Case Is > 2
                    errProvider.Icon = My.Resources.OK
                    errProvider.SetError(dtPicker, "more than two days")
                    errProvider.BlinkStyle = ErrorBlinkStyle.NeverBlink

                Case Is < 1

                    errProvider.Icon = My.Resources.Urgent
                    errProvider.SetError(dtPicker, "less than one day")
                    errProvider.BlinkStyle = ErrorBlinkStyle.AlwaysBlink
                    errProvider.BlinkRate = 500

                Case Else

                    errProvider.Icon = My.Resources.Attention
                    errProvider.SetError(dtPicker, "between one and two days")
                    errProvider.BlinkStyle = ErrorBlinkStyle.AlwaysBlink
                    errProvider.BlinkRate = 2600
            End Select
Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try
    End Sub

End Class
Name:  DateTime.jpg
Views: 387
Size:  48.3 KB

Any idea…

Regards…