2011-09-20 13 views
0

我曾希望EndEdit()方法将所有绑定并将控制值写回数据源。令人惊讶的是,它并不总是有效。有时这些值不会写回数据源。BindingSource.EndEdit()不向数据源写入值

当我想确保控件将他们的数据写回到数据源时,我唯一的选择是让每个控件的数据绑定和调用WriteValue()?

任何其他的想法或想法?

UPDATE

我绑定到对象。 我有一个文本框,我处理TextChanged事件。在这个处理程序中,我调用EndEdit()。 当我绑定到数据源时,将调用触发EndEdit()的TextChanged事件。如果我然后键入文本框,对EndEdit()的FIRST调用不起作用。之后,它似乎工作。 注意:如果我没有TextChanged处理程序,直到数据绑定到TextBox后,我才能使用它。看起来第一个EndEdit调用(在绑定过程中)似乎有一个不好的效果。

+1

你能告诉你如何填充你的绑定源,什么是数据库引擎,你如何绑定到UI控件以及如何调用EndEdit? –

回答

0

EndEdit()仅在绑定源处于编辑状态时才起作用,这通常是通过进入控件或开始实际编辑触发的。

+0

有趣。如何找出绑定源是否处于编辑状态? – Fernando