Posted 20 September 2019, 10:11 am EST
As illustrated in this windows forms example:
Imports FarPoint.Win.Spread.Model
Imports GrapeCity.CalcEngine
Public Class Form1
Dim dm As classDM
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
dm = New classDM
dm.RowCount = 10
dm.ColumnCount = 10
FpSpread1_Sheet1.Models.Data = dm
FpSpread1.AddCustomFunction(New classNullFunction)
FpSpread1.AddCustomFunction(New classDebugFunction)
FpSpread1_Sheet1.Cells(0, 0).Formula = "NULL()"
FpSpread1_Sheet1.Cells(1, 0).Formula = "DEBUG()"
End Sub
End Class
Class classNullFunction
Inherits GrapeCity.CalcEngine.[Function]
Public Sub New()
MyBase.New("NULL", 0, 0, FunctionAttributes.Variant)
End Sub
Protected Overrides Sub Evaluate(ByVal arguments As IArguments, ByVal result As IValue)
result.SetValue(CalcError.Null)
End Sub
End Class
Class classDebugFunction
Inherits GrapeCity.CalcEngine.[Function]
Public Sub New()
MyBase.New("DEBUG", 0, 0, FunctionAttributes.Number)
End Sub
Protected Overrides Sub Evaluate(ByVal arguments As IArguments, ByVal result As IValue)
result.SetValue(1)
End Sub
End Class
Public Class classDM
Inherits DefaultSheetDataModel
End Class