2006-12-26 Jonathan Pobst <monkey@jpobst.com>
[mono.git] / mcs / class / Managed.Windows.Forms / System.Windows.Forms / Binding.cs
index 6467494b1b62866ca96f80cc980412ba0bb70726..7fe7b29b1e89c9b9f6f71ebda8ceb1939cce8e15 100644 (file)
@@ -43,10 +43,6 @@ namespace System.Windows.Forms {
                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;
 
@@ -135,7 +131,6 @@ namespace System.Windows.Forms {
                        control.Validating += new CancelEventHandler (ControlValidatingHandler);
 
                        this.control = control;
-                       control.DataBindings.Add (this);
                }
 
                internal void Check (BindingContext binding_context)
@@ -165,7 +160,7 @@ namespace System.Windows.Forms {
 
                internal void PushData ()
                {
-                       if (IsBinding == false || manager.Current == null)
+                       if (manager == null || manager.IsSuspended || manager.Current == null)
                                return;
 
                        if (is_null_desc != null) {
@@ -179,8 +174,7 @@ namespace System.Windows.Forms {
                        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);
                        }