protected override FrameworkElement BuildElement(ValueContainer value)
{
DatePicker dp = new DatePicker() { Width = 200 };
dp.SelectedDateChanged += (s, e) =>
{
value.Value = dp.SelectedDate;
};
Action onValueChanged = () =>
{
dp.SelectedDate = Convert.ToDateTime(value.Value);
};
value.ValueChanged += onValueChanged;
onValueChanged();
return dp;
}