Class AbstractCalculationMonitor

Class AbstractCalculationMonitor

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

Überwachen Sie den Benutzer, um den Fortschritt der Formelberechnung zu verfolgen.

public abstract class AbstractCalculationMonitor

Vererbung

objectAbstractCalculationMonitor

Vererbte Mitglieder

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

Beispiele

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("Zelle A1 wird berechnet.");
    }
}

Konstruktoren

AbstractCalculationMonitor()

protected AbstractCalculationMonitor()

Eigenschaften

CalculatedValue

Erhält den neu berechneten Wert der Zelle.
Sollte nur in Aspose.Cells.AbstractCalculationMonitor.AfterCalculate(System.Int32,System.Int32,System.Int32) verwendet werden.

public object CalculatedValue { get; }

Eigenschaftswert

object

OriginalValue

Erhält den alten Wert der berechneten Zelle.
Sollte nur in Aspose.Cells.AbstractCalculationMonitor.BeforeCalculate(System.Int32,System.Int32,System.Int32) und Aspose.Cells.AbstractCalculationMonitor.AfterCalculate(System.Int32,System.Int32,System.Int32) verwendet werden.

public object OriginalValue { get; }

Eigenschaftswert

object

ValueChanged

Ob der Wert der Zelle nach der Berechnung geändert wurde.
Sollte nur in Aspose.Cells.AbstractCalculationMonitor.AfterCalculate(System.Int32,System.Int32,System.Int32) verwendet werden.

public bool ValueChanged { get; }

Eigenschaftswert

bool

Methoden

AfterCalculate(int, int, int)

Implementieren Sie diese Methode, um nach der Berechnung einer Zelle Geschäfte zu tätigen.

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

Parameter

sheetIndex int

Index des Blattes, zu dem die Zelle gehört.

rowIndex int

Zeilenindex der Zelle

colIndex int

Spaltenindex der Zelle

BeforeCalculate(int, int, int)

Implementieren Sie diese Methode, um vor der Berechnung einer Zelle Geschäfte zu tätigen.

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

Parameter

sheetIndex int

Index des Blattes, zu dem die Zelle gehört.

rowIndex int

Zeilenindex der Zelle

colIndex int

Spaltenindex der Zelle

Interrupt(string)

protected void Interrupt(string msg)

Parameter

msg string

OnCircular(IEnumerator)

Implementieren Sie diese Methode, um Geschäfte bei der Berechnung von Formeln mit zirkulären Referenzen zu tätigen.

public virtual bool OnCircular(IEnumerator circularCellsData)

Parameter

circularCellsData IEnumerator

IEnumerator mit Aspose.Cells.CalculationCell-Elementen, die Zellen darstellen, die von zirkulären Referenzen abhängen.

Rückgabewert

bool

Ob der Formel-Engine nach diesem Aufruf berechnen muss.
Wahr, um der Formel-Engine zu erlauben, die Berechnung für sie fortzusetzen.
Falsch, um der Formel-Engine zu erlauben, diese Zellen nur als berechnet zu markieren.

Anmerkungen

In der Implementierung kann der Benutzer auch den erwarteten Wert als berechnetes Ergebnis für einen Teil/alle dieser Zellen festlegen, sodass die Formel-Engine sie nicht rekursiv berechnet.

 Deutsch