Spread Silverlight Documentation
AddCustomFunction Method (GcSpreadSheet)
Example 


The GrapeCity.CalcEngine.Functions.CalcFunction to add.
Adds a custom function to the workbook.
Syntax
'Declaration
 
Public Sub AddCustomFunction( _
   ByVal function As CalcFunction _
) 
'Usage
 
Dim instance As GcSpreadSheet
Dim function As CalcFunction
 
instance.AddCustomFunction(function)
public void AddCustomFunction( 
   CalcFunction function
)

Parameters

function
The GrapeCity.CalcEngine.Functions.CalcFunction to add.
Example
This example adds a custom function.
public class CubeFunctionInfo : GrapeCity.CalcEngine.Functions.CalcFunction 
    {
        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, bool arrayformulamode)
            
        {
            double num = GrapeCity.CalcEngine.CalcConvert.ToDouble(args[0]);
            return num * num * num;
        }
        public override object Evaluate(object[] args, object context, bool arrayformulamode)
    {
        return Evaluate(args, arrayformulamode);
    }
    }

private void button1_Click(object sender, RoutedEventArgs e)
        {
            gcSpreadSheet1.AddCustomFunction(new CubeFunctionInfo());
            // or
            //gcSpreadSheet1.Sheets[0].AddCustomFunction(new CubeFunctionInfo());
            gcSpreadSheet1.Sheets[0].SetFormula(1, 1, "CUBE(4)");
            //gcSpreadSheet1.ClearCustomFunctions();
        }
Public Class CubeFunctionInfo
        Inherits GrapeCity.CalcEngine.Functions.CalcFunction
        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(args As Object(), Optional arrayformulamode As Boolean = False) As Object

            Dim num As Double = GrapeCity.CalcEngine.CalcConvert.ToDouble(args(0))
            Return num * num * num
        End Function
        Public Overrides Function Evaluate(args As Object(), context As Object, Optional arrayformulamode As Boolean = False) As Object
            Return Evaluate(args, arrayformulamode)
        End Function
    End Class

Private Sub Button1_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click
        GcSpreadSheet1.AddCustomFunction(New CubeFunctionInfo())
        ' Or
        'GcSpreadSheet1.Sheets(0).AddCustomFunction(New CubeFunctionInfo())
        GcSpreadSheet1.Sheets(0).SetFormula(1, 1, "CUBE(4)")
        'GcSpreadSheet1.ClearCustomFunctions()
    End Sub
Requirements

Target Platforms: Windows 7, Windows 8 Desktop, Windows Vista SP1 or later, Windows Server 2000, Windows 2000 Professional, Windows XP Professional, Windows NT 4.0 Workstation, SP6, Windows NT 4.0 Server, SP6

See Also

Reference

GcSpreadSheet Class
GcSpreadSheet Members

 

 


Copyright © GrapeCity, inc. All rights reserved.