DateTimePicker und Binding ? Geht nicht !

Hi,

habe auf meiner Form einen dateTimePicker mit CheckBox, welches zu Programmstart Checked = false ist.

Im folgenden versuche ich die Eigenschaft Value des dateTimePicker’s mit der Zelle „birthday“ aus meinem dataset zu binden. Wenn die Zelle leer ist dann soll sie das heutige Datum als Value bekommen und weiterhin auf Checked = false bleiben und sonst eben den Wert aus der Zelle aus dem dataset übernehmen.

Das klappt auch soweit nur wenn ich den wert in des dateTimePicker in der GUI, also zur Laufzeit ändere müsste sich ja wegen dem Binding auch der Wert in der Zelle ändern und genau das macht es nicht !!!??? Es wird nicht einmal das Parse (delegate) der Binding aufgerufen.

Hier der Code:

public Form1()
{
InitializeComponent();
this.dataset1.ReadXml(„dTPicker.xml“);
bMB = this.BindingContext[this.dataset1,„Table1“];
Binding bindingDateTimePicker = new Binding(„Value“,this.dataset1,„Table1.birthday“);
bindingDateTimePicker.Format += new ConvertEventHandler(bindingDateTimePicker_Format);
bindingDateTimePicker.Parse +=new ConvertEventHandler(bindingDateTimePicker_Parse);
this.dateTimePicker1.DataBindings.Add(bindingDateTimePicker);
}

private void bindingDateTimePicker_Format(object sender, ConvertEventArgs e)
{
if(e.Value.Equals(""))
{
e.Value = DateTime.Now.ToShortDateString();
this.dateTimePicker1.Checked = false;
}
else
{
DateTime date = (DateTime)e.Value;
e.Value = (date.ToShortDateString());
}
}

private void bindingDateTimePicker_Parse(object sender, ConvertEventArgs e)
{
DateTime date = (DateTime) e.Value;
e.Value = date.ToShortDateString();
}

Ich verstehe nicht warum das so ist, normalerweise ist doch eine Binding so das es synchronisiert wird egal ob man den zellenwert oder den wert des steuerelements ändern…???

mfg
yesso