DateTimePicker control and its DateTimeKind setting
I got this information from one of my ONETUG members (thanks JT) and I thought I would share.
There's a "feature" in the .NET 2.0 framework for the DateTimePicker control. When you assign it a value for the DateTime, it will inherit the DateTimeKind setting (Local, UTC, or Unspecified). When you change the date or time, the Value member then gets its DateTimeKind member set to Unspecified. As you can imagine, if you are trying to deal with both UTC and Local times, that can really mess up your times.
As a remedy for that I'm currently just assuming the same "kind" as I started out with. So in my case, I'm starting with Locals and when I change the time or date, I treat the time as Local, even though it's now Unspecified. So when I convert to UTC, rather than checking to see if the value is currently Local, I either have to additionally check for Unspecified, or check to see if it is NOT UTC.
In my case, since I'm dealing with all times in the forms as Local, if Microsoft updates the DTP to retain the "kind" when you make changes, it won't break my code, but someone not aware of this anomaly that is dealing with Local and UTC at the same time might not be so lucky.