Spread Windows Forms 8.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 2008, Windows XP (SP2), Windows Vista, Windows 7, Windows 8

See Also

Reference

DefaultSheetDataModel Class
DefaultSheetDataModel Members

 

 


Copyright © GrapeCity, inc. All rights reserved.