4

我在 C# 中有一个使用 DateTimePicker 和几个文本框的 win 表单。文本框从用户那里收集一些特定于 DateTimePicker 中日期的信息。

我想在 DateTimePicker 中更改日期时将数据保存在文本框中。

为此,我需要在更改日期之前读取 DateTimePicker 中的日期。

我怎么能那样做?DateTimePicker_valueChanged 事件似乎没有这样做。

从 dateTimePicker 读取的值是更改日期后的值。如何在更改日期之前获得日期?

请帮忙。

4

2 回答 2

3

设置值时,您需要将值存储在某种变量中。

因此,如果您在加载表单时设置值,那么您也将其存储在变量中。当更改事件触发时,您可以使用存储的变量。完成后,您可以更新它以匹配新更改的值,为下次更改做好准备。

例如:

public class MyClass
{

    DateTime? LastDateValue = null;

    void OnLoad()
    {
       //Set both datepicker and LastDateValue to be the same
    }

    void DateTimePicker_valueChanged()
    {
       //use LastDateValue to save text fields
       //set LastDateValue to match new value ready to use on next event fire
    }

}
于 2012-08-31T15:25:58.583 回答
0

就在您初始化 时DateTimePicker,在某个变量中读取它的日期。

然后应用您 DateTimePicker_valueChanged event的它将继续存储以前的值并很快重置为新值。

于 2012-08-31T15:26:55.487 回答