Gets an IEnumerator that enumerates through the names of the custom functions in the model.
Syntax
Visual Basic (Declaration) | |
---|
Public Function GetCustomFunctionEnumerator() As IEnumerator |
Return Value
IEnumerator object containing the enumerator for the custom function
Example
This example illustrates the use of this member by returning an IEnumerator that enumerates through the names of the custom functions in the model.
C# | Copy Code |
---|
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);
} |
Visual Basic | Copy Code |
---|
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()) |
Requirements
Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
See Also