Class AbstractCalculationMonitor

Class AbstractCalculationMonitor

Namespace: Aspose.Cells
Assembly: Aspose.Cells.dll (25.2.0)

Monitor pro uživatele pro sledování postupu výpočtu vzorce.

public abstract class AbstractCalculationMonitor

Dědičnost

objectAbstractCalculationMonitor

Děděné členy

object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

Příklady

Workbook wb = new Workbook("calc.xlsx");
CalculationOptions opts = new CalculationOptions();
opts.CalculationMonitor = new MyCalculationMonitor();
wb.CalculateFormula(opts);

class MyCalculationMonitor : AbstractCalculationMonitor
{
    public override void BeforeCalculate(int sheetIndex, int rowIndex, int colIndex)
    {
        if(sheetIndex!=0 || rowIndex!=0 || colIndex!=0)
        {
            return;
        }
        Console.WriteLine("Bude vypočítána buňka A1.");
    }
}

Konstruktor

AbstractCalculationMonitor()

protected AbstractCalculationMonitor()

Vlastnosti

CalculatedValue

Získá nově vypočítanou hodnotu buňky.
Měla by být používána pouze v Aspose.Cells.AbstractCalculationMonitor.AfterCalculate(System.Int32,System.Int32,System.Int32).

public object CalculatedValue { get; }

Hodnota vlastnosti

object

OriginalValue

Získá starou hodnotu vypočítané buňky.
Měla by být používána pouze v Aspose.Cells.AbstractCalculationMonitor.BeforeCalculate(System.Int32,System.Int32,System.Int32) a Aspose.Cells.AbstractCalculationMonitor.AfterCalculate(System.Int32,System.Int32,System.Int32).

public object OriginalValue { get; }

Hodnota vlastnosti

object

ValueChanged

Zda byla hodnota buňky změněna po výpočtu.
Měla by být používána pouze v Aspose.Cells.AbstractCalculationMonitor.AfterCalculate(System.Int32,System.Int32,System.Int32).

public bool ValueChanged { get; }

Hodnota vlastnosti

bool

Metody

AfterCalculate(int, int, int)

Implementujte tuto metodu, abyste provedli akci po výpočtu jedné buňky.

public virtual void AfterCalculate(int sheetIndex, int rowIndex, int colIndex)

Parametry

sheetIndex int

Index listu, ke kterému buňka patří.

rowIndex int

Index řádku buňky

colIndex int

Index sloupce buňky

BeforeCalculate(int, int, int)

Implementujte tuto metodu, abyste provedli akci před výpočtem jedné buňky.

public virtual void BeforeCalculate(int sheetIndex, int rowIndex, int colIndex)

Parametry

sheetIndex int

Index listu, ke kterému buňka patří.

rowIndex int

Index řádku buňky

colIndex int

Index sloupce buňky

Interrupt(string)

protected void Interrupt(string msg)

Parametry

msg string

OnCircular(IEnumerator)

Implementujte tuto metodu, abyste provedli akci při výpočtu vzorců s cyklickými odkazy.

public virtual bool OnCircular(IEnumerator circularCellsData)

Parametry

circularCellsData IEnumerator

IEnumerator s položkami Aspose.Cells.CalculationCell představujícími buňky, které závisí na cyklických odkazech.

Vrací

bool

Zda potřebuje vzorcový engine vypočítat tyto buňky v cyklu po tomto volání.
True, aby vzorcový engine pokračoval v výpočtu pro ně.
False, aby vzorcový engine pouze označil tyto buňky jako Vypočítané.

Poznámky

V implementaci může uživatel také nastavit očekávanou hodnotu jako vypočítaný výsledek pro část/všechny tyto buňky, takže vzorcový engine je nebude vypočítávat rekurzivně.

 Čeština