【问题标题】:DateTimePicker VB.Net save value on closeDateTimePicker VB.Net 在关闭时保存值
【发布时间】:2012-06-09 15:55:56
【问题描述】:

我有 2 个 Forms.Form 1 是主要的,并包含一个按钮,该按钮应显示 msgbox,其日期是在 Form 2 上的 datetimepicker 上选择的。msgbox 上显示的日期应为短格式 (dd.MM.yyyy。) .

程序开始时,datetimepicker 应重置为今天,msgbox 应显示今天日期,除非用户在 Form2 上选择另一个日期。如果用户转到 From 2 并更改日期 Form 2 应保存新值,并且 msgbox 应在按钮单击 form1 后显示它。我该怎么做?

我在“日期”类型的设置中设置了 myDate 参数,但我没有设置值。 在form1加载我有: my.Settings.myDate = Today

Form2 负载我有:

datetimepicker1.Value = my.Settings.myDate

在 Form2 关闭时我有:

 my.Settings.myDate = datetimepicker1.Value

这会正确设置选择器上的日期,但是当我转到 form2 并更改值,然后关闭 form2 并重新打开它时,它仍然显示我选择的日期,但 msgbox 显示初始值。

谢谢

【问题讨论】:

  • 您在哪个部分遇到了问题?你试过什么?这是作业吗?如果是这样,请重新标记它。
  • 不,这不是家庭作业。将编辑问题。
  • 显示消息框的代码是什么样的?那是不工作的部分,对吧?
  • MsgBox(Form2.datetimepicker1.Value)

标签: vb.net datetimepicker savestate


【解决方案1】:

将显示消息框的行更改为:

MsgBox(my.Settings.myDate)

或者更好的是,将其更改为 .NET 方式而不是 VB6 方式:

MessageBox.Show(my.Settings.myDate.ToShortDateString())

我认为它失败的原因是因为您正在使用对表单的全局 Form2 引用,该表单可能与您显示的表单实例相同,也可能不同?不看更多代码很难说。

【讨论】:

  • 两者都有效,但你提出的第二个也显示时间(5.6.2012.0.00.00),我不太明白你在这个解释中说什么......这两种形式都是为他们创建的自己的。我不知道表单的实例是什么。我对这一切都很陌生。
  • 我更新了,试试看。 ToString 允许您指定所需的任何自定义格式,但如果您想要的只是短日期格式,ToShortDateString 是最佳选择。
  • 顺便说一句,非常感谢你......但我不能投票......还没有代表:)
  • 是的,ToShortDateString 也可以完成这项工作。顺便说一句,这是一种解决方法,或者我将来可以将其用作可靠的东西。
  • 好的,谢谢您的宝贵时间。我们现在可以关闭它。我是否需要将某些内容标记为已回答以及在哪里。这是我第一次来这里。
猜你喜欢
  • 2022-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多