Spread Windows Forms 7.0 Product Documentation
GetCustomFunction Method
See Also  Example Support Options
FarPoint.Win.Spread Assembly > FarPoint.Win.Spread.Model Namespace > DefaultSheetDataModel Class : GetCustomFunction Method


name
Name of the user-defined custom function to get

Glossary Item Box

Gets a user-defined custom function from the model.

Syntax

Visual Basic (Declaration) 
Public Function GetCustomFunction( _
   ByVal name As String _
) As FunctionInfo
Visual Basic (Usage)Copy Code
Dim instance As DefaultSheetDataModel
Dim name As String
Dim value As FunctionInfo
 
value = instance.GetCustomFunction(name)
C# 
public FunctionInfo GetCustomFunction( 
   string name
)

Parameters

name
Name of the user-defined custom function to get

Return Value

FunctionInfo object containing the user-defined custom function with the specified name, or null if none exists

Example

This example illustrates the use of this member by returning a user-defined custom function from 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;

FarPoint.CalcEngine.FunctionInfo fi;
fi = dataModel.GetCustomFunction("CUBE");
listBox1.Items.Add(fi.MinArgs.ToString());
Visual BasicCopy 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 fi As FarPoint.CalcEngine.FunctionInfo
fi = dataModel.GetCustomFunction("CUBE")
ListBox1.Items.Add(fi.MinArgs.ToString())

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

© 2002-2014 ComponentOne, a division of GrapeCity. All Rights Reserved.