I look forward to these changes.
In order to handle a DBNull I inherited the control and added a bindable property (BindableValue) of type object. The other two issues that I have with this control is when hitting the delete key in the year field makes the year 0001 (or mindate year) and hitting delete in month/day sets it to 1. I prefer to have the control set to null if delete is hit at all in the control:
public override void OnKeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
if (e.KeyData == System.Windows.Forms.Keys.Delete)
e.Handled = true;
When the value is null and the user clicks the drop down, the calendar displays the mindate. This has been discussed on other threads, but my solution was this:
protected override void OnOpening(CancelEventArgs args)
if (this.Value == this.NullDate)
this.Value = DateTime.Today;
It would be ideal if something like the above was implemented in the service pack or a future release. I greatly appreciate your concern.