public XlCustomProperty Add(string name, object value) { object[] paramArray = new object[1]; paramArray[0] = name; paramArray[1] = value; object returnValue = InstanceType.InvokeMember("Add", BindingFlags.InvokeMethod, null, ComReference, paramArray, XlLateBindingApiSettings.XlThreadCulture); if (null == returnValue) { return(null); } XlCustomProperty newClass = new XlCustomProperty(this, returnValue); ListChildReferences.Add(newClass); return(newClass); }
/// <summary> /// returns an XlCustomProperty by Index, not 0 based /// </summary> /// <param name="i"></param> /// <returns></returns> public XlCustomProperty this[int index] { get { object[] paramArray = new object[1]; paramArray[0] = index; object returnValue = InstanceType.InvokeMember("Item", BindingFlags.InvokeMethod, null, ComReference, paramArray, XlLateBindingApiSettings.XlThreadCulture); if (null == returnValue) { return(null); } XlCustomProperty newClass = new XlCustomProperty(this, returnValue); ListChildReferences.Add(newClass); return(newClass); } }
/// <summary> /// Foreach Enumerator /// </summary> /// <returns></returns> public IEnumerator GetEnumerator() { int iCount = Count; XlCustomProperty[] res_addins = new XlCustomProperty[iCount]; for (int i = 1; i <= iCount; i++) { res_addins[i - 1] = this[i]; } for (int i = 0; i < res_addins.Length; i++) { yield return(res_addins[i]); } }