protected override void RemoveCore(Binding dataBinding)
        {
            if (dataBinding == null)
                throw new ArgumentNullException ("dataBinding");

            base.RemoveCore (dataBinding);
        }
 internal void AddBinding(Binding binding)
 {
     if (Bindings.Contains (binding))
         return;
     Bindings.Add (binding);
 }
        public new void Remove(Binding binding)
        {
            if (binding == null)
                throw new NullReferenceException("The binding is null");

            base.Remove(binding);
        }
        protected override void AddCore(Binding dataBinding)
        {
            if (dataBinding == null)
                throw new ArgumentNullException ("dataBinding");

            if (dataBinding.Control != null && dataBinding.BindableComponent != bindable_component)
                throw new ArgumentException ("dataBinding belongs to another BindingsCollection");

            for (int i = 0; i < Count; i++) {
                Binding bnd = this [i];
                if (bnd == null || bnd.PropertyName.Length == 0 || dataBinding.PropertyName.Length == 0) {
                    continue;
                }

                if (String.Compare (bnd.PropertyName, dataBinding.PropertyName, true) == 0) {
                    throw new ArgumentException ("The binding is already in the collection");
                }
            }

            dataBinding.SetControl (bindable_component);

            dataBinding.Check ();
            base.AddCore (dataBinding);
        }
        public Binding Add(string propertyName, object dataSource, string dataMember)
        {
            if (dataSource == null)
                throw new ArgumentNullException ("dataSource");

            Binding res = new Binding (propertyName, dataSource, dataMember);
            res.DataSourceUpdateMode = default_datasource_update_mode;

            Add (res);
            return res;
        }
        public Binding Add(string propertyName, object dataSource, string dataMember, bool formattingEnabled, DataSourceUpdateMode updateMode,
			object nullValue, string formatString, IFormatProvider formatInfo)
        {
            if (dataSource == null)
                throw new ArgumentNullException ("dataSource");

            Binding res = new Binding (propertyName, dataSource, dataMember);
            res.FormattingEnabled = formattingEnabled;
            res.DataSourceUpdateMode = updateMode;
            res.NullValue = nullValue;
            res.FormatString = formatString;
            res.FormatInfo = formatInfo;

            Add (res);
            return res;
        }
 //[MonoTODO ("Stub, does nothing")]
 public static void UpdateBinding(BindingContext newBindingContext, Binding binding)
 {
 }
 public new void Add(Binding binding)
 {
     AddCore (binding);
     OnCollectionChanged (new CollectionChangeEventArgs (CollectionChangeAction.Add, binding));
 }
 internal bool Contains(Binding binding)
 {
     return List.Contains (binding);
 }
 protected internal void Add(Binding binding)
 {
     AddCore(binding);
 }
        protected virtual void RemoveCore(Binding dataBinding)
        {
            CollectionChangeEventArgs args = new CollectionChangeEventArgs(CollectionChangeAction.Remove, dataBinding);
            OnCollectionChanging (args);

            base.List.Remove(dataBinding);
            OnCollectionChanged (args);
        }
        protected virtual void AddCore(Binding dataBinding)
        {
            CollectionChangeEventArgs args = new CollectionChangeEventArgs (CollectionChangeAction.Add, dataBinding);
            OnCollectionChanging (args);

            base.List.Add(dataBinding);
            OnCollectionChanged (args);
        }
 protected internal void Remove(Binding binding)
 {
     RemoveCore(binding);
 }