想要更改DateTimePicker.Value.TimeOfDay,但它是只读的

本文关键字:只读 TimeOfDay DateTimePicker Value | 更新日期: 2023-09-27 18:23:51

我正在尝试检查DateTimePicker控件中输入的时间,并将其更正为C#中最接近的可接受值

if (Summer1.Value.TimeOfDay > Summer2.Value.TimeOfDay)
                Summer1.Value.TimeOfDay = Summer2.Value.TimeOfDay;

它给了我以下信息:

无法将属性或索引器"System.DateTime.TimeOfDay"分配给--它是只读

为什么它将DateTimePicker对象处理为系统时间?我找不到任何和VS2003中控件的只读状态有关的内容。

想要更改DateTimePicker.Value.TimeOfDay,但它是只读的

Summer1.ValueDateTimePicker的属性,它具有DateTime的类型。此属性是可转让的。

您正在尝试分配Summer1.Value.TimeOfDay,它是DateTime对象Summer1.Value的属性,而此属性在DateTime类中没有setter。

Summer1.Value = Summer2.Value

应该可以很好地工作,但可能不会给你想要的结果。

最接近你想要的输出将是类似的东西

Summer1.Value = Summer1.Value.Date + Summer2.Value.TimeOfDay;