I don't know if this is the best way to achieve what you want to do, but you can extend the DateElement to trigger events when the value is selected.
Here is an example DateElement:
public class CustomDateElement : DateElement
{
public event System.Action<CustomDateElement> DateChanged;
public CustomDateElement(string caption, DateTime date) : base(caption, date) {}
public override string FormatDate (DateTime dt)
{
if (DateChanged != null)
DateChanged(this, dt);
return base.FormatDate (dt);
}
}
And here is an example of how to use the new CustomDateElement:
var dateElement = new CustomDateElement ("Due Date", model.Birthday);
dateElement.DateChanged += (obj) => {
Console.WriteLine(obj.DateValue);
};