Spread Windows Forms 13.0 Product Documentation
FarPoint.CalcEngine Assembly / FarPoint.CalcEngine Namespace / CalcReference Class / Column Property
Example


In This Topic
    Column Property (CalcReference)
    In This Topic
    Gets the index of the first column in the cell or range reference.
    Syntax
    'Declaration
     
    Public MustOverride ReadOnly Property Column As Integer
    'Usage
     
    Dim instance As CalcReference
    Dim value As Integer
     
    value = instance.Column
    public abstract int Column {get;}

    Property Value

    Integer index of the first column in the cell or range reference
    Example
    This example creates a custom function.
    public class Cube : FarPoint.CalcEngine.FunctionInfo 
        { 
    
            public override string Name 
            { 
                get 
                { 
                    return "Cube"; 
                } 
            } 
    
            public override int MaxArgs 
            { 
                get 
                { 
                    return 1; 
                } 
            } 
    
            public override int MinArgs 
            { 
                get 
                { 
                    return 1; 
                } 
            } 
    
            public override bool AcceptsReference(int i) 
            { 
                if (i == 0) 
                { 
                    return true; 
                } 
                else 
                { 
                    return false; 
                } 
            } 
    
            public override object Evaluate(object[] args) 
        { 
            double total; 
            FarPoint.CalcEngine.CalcReference cellref; 
            object value; 
            if (args[0] is FarPoint.CalcEngine.CalcArray) 
        { 
            return FarPoint.CalcEngine.CalcError.Value; 
        } 
        if (args[0] is FarPoint.CalcEngine.CalcReference) 
    { 
        cellref = ((FarPoint.CalcEngine.CalcReference)(args[0])); 
        if (cellref.ColumnCount > 1 | cellref.RowCount > 1) 
    { 
        return FarPoint.CalcEngine.CalcError.Value; 
    } 
        value = cellref.GetValue(cellref.Row, cellref.Column); 
        try 
    { 
        total = Math.Pow(FarPoint.CalcEngine.CalcConvert.ToDouble(args[0]), 3); 
    } 
        catch 
    { 
    } 
    } 
        else 
    { 
        try 
    { 
        total = Math.Pow(FarPoint.CalcEngine.CalcConvert.ToDouble(args[0]), 3); 
    } 
        catch 
    { 
    } 
    } 
        return total; 
    } 
    }
    Public Class Cube 
    Inherits FarPoint.CalcEngine.FunctionInfo 
    
    Public Overrides ReadOnly Property Name() As String 
    Get 
    Return "Cube" 
    End Get 
    End Property 
    
    Public Overrides ReadOnly Property MaxArgs() As Integer 
    Get 
    Return 1 
    End Get 
    End Property 
    
    Public Overrides ReadOnly Property MinArgs() As Integer 
    Get 
    Return 1 
    End Get 
    End Property 
    
    Public Overrides Function AcceptsReference(ByVal i As Integer) As Boolean 
    If i = 0 Then 
    Return True 
    Else 
    Return False 
    End If 
    End Function 
    
    Public Overrides Function Evaluate(ByVal args() As Object) As Object 
    Dim total As Double 
    Dim cellref As FarPoint.CalcEngine.CalcReference 
    Dim value As Object 
    If TypeOf args(0) Is FarPoint.CalcEngine.CalcArray Then Return FarPoint.CalcEngine.CalcError.Value 
    If TypeOf args(0) Is FarPoint.CalcEngine.CalcReference Then 
    cellref = CType(args(0), FarPoint.CalcEngine.CalcReference) 
    If cellref.ColumnCount > 1 Or cellref.RowCount > 1 Then Return FarPoint.CalcEngine.CalcError.Value 
    value = cellref.GetValue(cellref.Row, cellref.Column) 
    Try 
    total = FarPoint.CalcEngine.CalcConvert.ToDouble(value) ^ 3 
    Catch 
    End Try 
    Else 
    Try 
    total = FarPoint.CalcEngine.CalcConvert.ToDouble(args(0)) ^ 3 
    Catch 
    End Try 
    End If 
    Return total 
    End Function 
    End Class 
    See Also