Spread for ASP.NET 11 Product Documentation
AddCustomFunction Method (ICustomFunctionSupport)
Example 


FarPoint.Web.Spread Assembly > FarPoint.Web.Spread.Model Namespace > ICustomFunctionSupport Interface : AddCustomFunction Method
Function to add
Adds a new user-defined function to the model for use in formulas.
Syntax
'Declaration
 
Sub AddCustomFunction( _
   ByVal functionInfo As FunctionInfo _
) 
'Usage
 
Dim instance As ICustomFunctionSupport
Dim functionInfo As FunctionInfo
 
instance.AddCustomFunction(functionInfo)
void AddCustomFunction( 
   FunctionInfo functionInfo
)

Parameters

functionInfo
Function to add
Example
<Serializable()>
public class CubeFunctionInfo : FarPoint.CalcEngine.FunctionInfo 
{ 
        public override string Name { get { return "CUBE"; } } 
        public override int MinArgs { get { return 1; } } 
        public override int MaxArgs { get { return 1; } } 
        public override object Evaluate (object[] args) 
        { 
            double num = FarPoint.CalcEngine.CalcConvert.ToDouble(args[0]); 
            return num * num * num; 
        } 
} 
FarPoint.Web.Spread.Model.ICustomFunctionSupport cfs; 
cfs = (FarPoint.Web.Spread.Model.ICustomFunctionSupport)FpSpread1.ActiveSheetView.DataModel; 
cfs.AddCustomFunction(new CubeFunctionInfo()); 
FpSpread1.ActiveSheetView.SetFormula(1, 1, "CUBE(4)");
<Serializable()> 
Public Class CubeFunctionInfo
   Inherits FarPoint.CalcEngine.FunctionInfo

   Public Overrides ReadOnly Property Name() As String
        Get
             Return "CUBE"
        End Get
   End Property

   Public Overrides ReadOnly Property MinArgs() As Integer
        Get
             Return 1
        End Get
   End Property

   Public Overrides ReadOnly Property MaxArgs() As Integer
        Get
             Return 1
        End Get
   End Property

   Public Overrides Function Evaluate(ByVal args() As Object) As Object
        Dim num As Double = FarPoint.CalcEngine.CalcConvert.ToDouble(args(0))
        Return num * num * num
   End Function
End Class

Dim cfs As FarPoint.Web.Spread.Model.ICustomFunctionSupport
cfs = FpSpread1.ActiveSheetView.DataModel
cfs.AddCustomFunction(New CubeFunctionInfo)
FpSpread1.ActiveSheetView.SetFormula(1, 1, "CUBE(4)")
See Also

Reference

ICustomFunctionSupport Interface
ICustomFunctionSupport Members