FarPoint.Win.Spread Assembly > FarPoint.Win.Spread.Model Namespace > DefaultSheetDataModel Class : GetCustomFunctionEnumerator Method |
'Declaration Public Function GetCustomFunctionEnumerator() As IEnumerator
'Usage Dim instance As DefaultSheetDataModel Dim value As IEnumerator value = instance.GetCustomFunctionEnumerator()
public IEnumerator GetCustomFunctionEnumerator()
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; } } public class AddFunctionInfo : FarPoint.CalcEngine.FunctionInfo { public override string Name { get { return "ADD"; } } public override int MinArgs { get { return 1; } } public override int MaxArgs { get { return 1; } } public override object Evaluate (object[] args) { float num = FarPoint.CalcEngine.CalcConvert.ToInt(args[0]); return num + num; } } FarPoint.Win.Spread.Model.DefaultSheetDataModel dataModel = new FarPoint.Win.Spread.Model.DefaultSheetDataModel(5, 5); dataModel.AddCustomFunction(new CubeFunctionInfo()); dataModel.SetFormula(1, 1, "CUBE(4)"); dataModel.AddCustomFunction(new AddFunctionInfo()); dataModel.SetFormula(2, 2, "Add(10)"); fpSpread1.ActiveSheet.Models.Data = dataModel; IEnumerator enm; enm = dataModel.GetCustomFunctionEnumerator(); while (enm.MoveNext()) { listBox1.Items.Add((string)enm.Current); }
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 Public Class AddFunctionInfo Inherits FarPoint.CalcEngine.FunctionInfo Public Overrides ReadOnly Property Name() As String Get Return "ADD" 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 Single = FarPoint.CalcEngine.CalcConvert.ToInt(args(0)) Return 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)") dataModel.AddCustomFunction(New AddFunctionInfo()) dataModel.SetFormula(2, 2, "Add(10)") FpSpread1.ActiveSheet.Models.Data = dataModel FpSpread1.ActiveSheet.Models.Data = dataModel Dim enm As IEnumerator enm = dataModel.GetCustomFunctionEnumerator() While enm.MoveNext() ListBox1.Items.Add(enm.Current())
Target Platforms: Windows 2000 Professional (SP4), Windows 2000 Server, Windows 2003 Server (SP1), Windows 2008, Windows XP (SP2), Windows Vista, Windows 7, Windows 8