public override void SetValue(Object obj, Object value, BindingFlags invokeAttr, Binder binder, Object[] index, CultureInfo culture) { if (this.setMeth == null) throw new MissingMethodException(); int n = index == null ? 0 : index.Length; Object[] pars = new Object[n+1]; pars[0] = value; if (n > 0) ArrayObject.Copy(index, 0, pars, 1, n); this.setMeth.Invoke(obj, invokeAttr, binder, pars, culture); }