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
object ← AbstractCalculationMonitor
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
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
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
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
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.