public void DirectCall(fNo_Rtn_Param_One f, object param) { List <Object> listParam = new List <object>(); listParam.Add(f); listParam.Add(param); AsyncExecute(InnerRunDelegate, listParam); }
protected void InnerRunDelegate(object p) { List <Object> listParam = p as List <Object>; if (listParam.Count == 2) { fNo_Rtn_Param_One tmpFunction = (fNo_Rtn_Param_One)listParam[0]; listParam.Remove(tmpFunction); ownerView.Invoke(tmpFunction, listParam.ToArray()); } else if (listParam.Count == 3) { fNo_Rtn_Param_Two tmpFunction = (fNo_Rtn_Param_Two)listParam[0]; listParam.Remove(tmpFunction); ownerView.Invoke(tmpFunction, listParam.ToArray()); } else if (listParam.Count == 4) { fNo_Rtn_Param_Three tmpFunction = (fNo_Rtn_Param_Three)listParam[0]; listParam.Remove(tmpFunction); ownerView.Invoke(tmpFunction, listParam.ToArray()); } }