///<summary> ///Returns a collection of properties for the type of array specified by the value parameter, using the specified context and attributes. ///</summary> /// ///<returns> ///A <see cref="T:System.ComponentModel.PropertyDescriptorCollection"></see> with the properties that are exposed for this data type, or null if there are no properties. ///</returns> /// ///<param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext"></see> that provides a format context. </param> ///<param name="attributes">An array of type <see cref="T:System.Attribute"></see> that is used as a filter. </param> ///<param name="value">An <see cref="T:System.Object"></see> that specifies the type of array for which to get properties. </param> public override PropertyDescriptorCollection GetProperties(ITypeDescriptorContext context, object value, Attribute[] attributes) { GenericCollection <T> collection = value as GenericCollection <T>; if (collection != null) { PropertyDescriptor[] properties = new PropertyDescriptor[collection.Count]; for (int i = 0; i < collection.Count; i++) { try { properties[i] = (new PDesc <T>(collection[i])); } #pragma warning disable EmptyGeneralCatchClause catch (Exception) #pragma warning restore EmptyGeneralCatchClause { } } return(new PropertyDescriptorCollection(properties)); } return(base.GetProperties(context, value, attributes)); }
/// <summary> /// /// </summary> /// <param name="index"></param> /// <param name="items"></param> public void InsertRange(int index, GenericCollection <T> items) { InnerList.InsertRange(index, items); }