private PropertyDescriptor control_property;
private PropertyDescriptor is_null_desc;
- private EventDescriptor changed_event;
- private EventHandler property_value_changed_handler;
- private object event_current; // The manager.Current as far as the changed_event knows
-
private object data;
private Type data_type;
control.Validating += new CancelEventHandler (ControlValidatingHandler);
this.control = control;
- control.DataBindings.Add (this);
}
internal void Check (BindingContext binding_context)
internal void PushData ()
{
- if (IsBinding == false || manager.Current == null)
+ if (manager == null || manager.IsSuspended || manager.Current == null)
return;
if (is_null_desc != null) {
PropertyDescriptor pd = TypeDescriptor.GetProperties (manager.Current).Find (binding_member_info.BindingField, true);
if (pd == null) {
data = ParseData (manager.Current, manager.Current.GetType ());
- }
- else {
+ } else {
data = ParseData (pd.GetValue (manager.Current), pd.PropertyType);
}