1

我的程序中有更新数据库的代码。更新数据库后,我将标签的文本更改为“上次更新”,然后是更新发生的实际时间。这部分工作完美。

当我关闭程序并重新打开它时,就会出现我的问题。我想编写代码来检查标签中的日期,如果标签中的日期小于我想更新数据库的当前日期。但是当我关闭我的程序并重新打开它时,文本中的标签不会保留。

这是我的代码:

Public Sub Screen_Shown(sender As Object, e As EventArgs) Handles Me.Shown
    Dim Time_of_Update = CDate(Label_Time_of_Update.Text.Split(" "c)(2).Trim())
    Debug.WriteLine(Time_of_Update)
    If Time_of_Update < Today Then
        Update_Data()
    Else
    End If
End Sub

Private Sub Update_Data()
    Update_Daily()
    Ready_Update_Quarterly_and_Annualy()

    Dim Time_of_Update = DateTime.Now
    Label_Time_of_Update.Text = "Last Updated " & Time_of_Update & ""
End Sub

我怎样才能解决这个问题?

4

1 回答 1

1

转到项目属性中的设置并创建一个LastUpdatedDate设置:

  • Name== "LastUpdatedDate" 基本上是一个变量名
  • Type== 日期
  • Scope== 用户(应用程序范围使它们只读)
  • Value== 有效日期

这定义了设置名称和数据类型。在代码中:

Dim Time_of_Update = DateTime.Now
Label_Time_of_Update.Text = "Last Updated " & Time_of_Update & ""

My.Settings.LastUpdatedDate = Time_of_Update
My.Settings.Save

下次运行时:

Label_Time_of_Update.Text = My.Settings.LastUpdatedDate

将其保存为DateTime类型将使代码中的日期比较变得容易,而不是将其从字符串转换回来。

于 2013-10-24T13:41:40.013 回答