Spread Windows Forms 9.0 Product Documentation
AddCustomFunction Method (DefaultSheetDataModel)
Example 


FunctionInfo object that contains the user-defined function to add
Adds a new user-defined custom function to the model for use in formulas.
Syntax
'Declaration
 
Public Sub AddCustomFunction( _
   ByVal functionInfo As FunctionInfo _
) 
'Usage
 
Dim instance As DefaultSheetDataModel
Dim functionInfo As FunctionInfo
 
instance.AddCustomFunction(functionInfo)
public void AddCustomFunction( 
   FunctionInfo functionInfo
)

Parameters

functionInfo
FunctionInfo object that contains the user-defined function to add
Exceptions
ExceptionDescription
System.ArgumentNullException No function specified; function is a null reference (Nothing in Visual Basic)
Remarks

For more information on using custom functions in formulas, refer to the Formula Reference.

Example
This example adds a new user-defined custom function to the model for use in formulas.
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.Win.Spread.Model.DefaultSheetDataModel dataModel = new FarPoint.Win.Spread.Model.DefaultSheetDataModel(3, 3);
dataModel.AddCustomFunction(new CubeFunctionInfo());
dataModel.SetFormula(1, 1, "CUBE(4)");
fpSpread1.ActiveSheet.Models.Data = dataModel;
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 dataModel As New FarPoint.Win.Spread.Model.DefaultSheetDataModel(5, 5)
dataModel.AddCustomFunction(New CubeFunctionInfo())
dataModel.SetFormula(1, 1, "CUBE(4)")
FpSpread1.ActiveSheet.Models.Data = dataModel
Requirements

Target Platforms: Windows 2000 Professional (SP4), Windows 2000 Server, Windows 2003 Server (SP1), Windows Server 2012 R2, Windows 2008, Windows XP (SP2), Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10

See Also

Reference

DefaultSheetDataModel Class
DefaultSheetDataModel Members

 

 


Copyright © GrapeCity, inc. All rights reserved.