AbstractCalculationMonitor

AbstractCalculationMonitor class

Monitor für den Benutzer, um den Fortschritt der Formelberechnung zu verfolgen.

public abstract class AbstractCalculationMonitor

Eigenschaften

NameBeschreibung
CalculatedValue { get; }Ruft den neu berechneten Wert der Zelle ab. Sollte nur in verwendet werdenAfterCalculate .
OriginalValue { get; }Ruft den alten Wert der berechneten Zelle ab. Sollte nur in verwendet werdenBeforeCalculate undAfterCalculate .
ValueChanged { get; }Ob der Wert der Zelle nach der Berechnung geändert wurde. Sollte nur in verwendet werdenAfterCalculate .

Methoden

NameBeschreibung
virtual AfterCalculate(int, int, int)Implementieren Sie diese Methode, um Geschäfte zu machen, nachdem eine Zelle berechnet wurde.
virtual BeforeCalculate(int, int, int)Implementieren Sie diese Methode, um Geschäfte zu machen, bevor Sie eine Zelle berechnen.
virtual OnCircular(IEnumerator)Implementieren Sie diese Methode, um Geschäfte zu machen, wenn Sie Formeln mit Zirkelbezügen berechnen.

Beispiele

[C#]
//Benutzerdefinierter Monitor, um die Möglichkeit einer StackOverflowException zu prüfen
public class MyCalculationMonitor : AbstractCalculationMonitor
{
    public override void BeforeCalculate(int sheetIndex, int rowIndex, int colIndex)
    {
        if(new StackTrace(false).FrameCount > 1000)
        {
            throw new Exception("Stop the formula calculation because risk of StackOverflowException");
        }
    }
}

Siehe auch