/// <include file='doc\ObjectListFieldCollection.uex' path='docs/doc[@for="ObjectListFieldCollection.GetAll"]/*' />
 public ObjectListField[] GetAll()
 {
     int n = Count;
     ObjectListField[] allFields = new ObjectListField[n];
     if (n > 0) 
     {
         Items.CopyTo(0, allFields, 0, n);
     }
     return allFields;
 }
 /// <include file='doc\ObjectListFieldCollection.uex' path='docs/doc[@for="ObjectListFieldCollection.SetAll"]/*' />
 public void SetAll(ObjectListField[] value)
 {
     Items = new ArrayList(value);
     foreach(ObjectListField field in Items)
     {
         field.SetOwner(_owner);
     }
     if(_marked)
     {
         SetFieldsDirty();
     }
 }
 void LoadAutoFieldsState(Object state)
 {
     if (state != null)
     {
         Object[] fieldStates = (Object[])state;
         int count = fieldStates.Length;
         ArrayList list = new ArrayList(count);
         foreach (Object fieldState in fieldStates)
         {
             ObjectListField field = new ObjectListField();
             ((IStateManager)field).TrackViewState();
             ((IStateManager)field).LoadViewState (fieldState);
             list.Add(field);
         }
         _autoGeneratedFields = new ObjectListFieldCollection(this, list);
     }
 }
 private ObjectListField CreateAutoGeneratedField(String title, String dataField)
 {
     ObjectListField field = new ObjectListField();
     ((IStateManager)field).TrackViewState();
     field.Title = title;
     if (dataField != null)
     {
         field.DataField = dataField;
     }
     else
     {
         field.SelfReference = true;
     }
     return field;
 }
 /// <include file='doc\ObjectListFieldCollection.uex' path='docs/doc[@for="ObjectListFieldCollection.AddAt"]/*' />
 public void AddAt(int index, ObjectListField field)
 {
     if (index == -1)
     {
         Items.Add(field);
     }
     else
     {
         Items.Insert(index, field);
     }
     if (_marked)
     {
         if (!_fieldsSetDirty && index > -1)
         {
             SetFieldsDirty();
         }
         else
         {
             ((IStateManager)field).TrackViewState();
             field.SetDirty();
         }
     }
     field.SetOwner(_owner);
     NotifyOwnerChange();
 }
 /// <include file='doc\ObjectListFieldCollection.uex' path='docs/doc[@for="ObjectListFieldCollection.Add"]/*' />
 public void Add(ObjectListField field)
 {
     AddAt(-1, field);
 }
        private void EnsureCount(int count)
        {

            int diff = Count - count;
            if (diff > 0)
            {
                Items.RemoveRange(count, diff);
                NotifyOwnerChange();
            }
            else
            {
                // Set owner = null, to avoid multiple change notifications. 
                // We'll call it just once later.

                ObjectList prevOwner = _owner;
                _owner = null;
                for (int i = diff; i < 0; i++)
                {
                    ObjectListField field = new ObjectListField();
                    Add(field);
                    field.SetOwner(prevOwner);
                }
                _owner = prevOwner;
                NotifyOwnerChange();
            }
        }
 /// <include file='doc\ObjectListFieldCollection.uex' path='docs/doc[@for="ObjectListFieldCollection.IndexOf"]/*' />
 public int IndexOf(ObjectListField field)
 {
     if (field != null) 
     {
         return Items.IndexOf(field, 0, Count);
     }
     return -1;
 }
 /// <include file='doc\ObjectListFieldCollection.uex' path='docs/doc[@for="ObjectListFieldCollection.Remove"]/*' />
 public void Remove(ObjectListField field)
 {
     int index = IndexOf(field);
     if (index >= 0) 
     {
         RemoveAt(index);
     }
 }
Example #10
0
 internal FieldTreeNode(string fieldID, ObjectListField runtimeField)
     : base(fieldID)
 {
     this._runtimeField = runtimeField;
     this.LoadAttributes();
 }
            /// <summary>
            /// </summary>
            internal FieldTreeNode(String fieldID, ObjectListField runtimeField) : base(fieldID)
            {
                Debug.Assert(fieldID != null, "invalid ID for ObjectListField");
                Debug.Assert(runtimeField != null, "null ObjectListField");

                this._runtimeField  = runtimeField;

                LoadAttributes();
            }