public XlScript Add() { object returnValue = InstanceType.InvokeMember("Add", BindingFlags.InvokeMethod, null, ComReference, null, XlLateBindingApiSettings.XlThreadCulture); XlScript newClass = new XlScript(this, returnValue); if (null == returnValue) { return(null); } ListChildReferences.Add(newClass); return(newClass); }
/// <summary> /// returns an XlScript by Index, not 0 based /// </summary> /// <param name="i"></param> /// <returns></returns> public XlScript 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); } XlScript newClass = new XlScript(this, returnValue); ListChildReferences.Add(newClass); return(newClass); } }
/// <summary> /// Foreach Enumerator /// </summary> /// <returns></returns> public IEnumerator GetEnumerator() { int iCount = Count; XlScript[] res_addins = new XlScript[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]); } }