Class AbstractCalculationMonitor

Class AbstractCalculationMonitor

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

نظارت بر کاربر برای پیگیری پیشرفت محاسبه فرمول.

public abstract class AbstractCalculationMonitor

وراثت

objectAbstractCalculationMonitor

اعضای وراثت یافته

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

مثال‌ها

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("سلول A1 محاسبه خواهد شد.");
    }
}

سازنده‌ها

AbstractCalculationMonitor()

protected AbstractCalculationMonitor()

ویژگی‌ها

CalculatedValue

مقدار جدید محاسبه شده سلول را دریافت می‌کند. باید فقط در Aspose.Cells.AbstractCalculationMonitor.AfterCalculate(System.Int32,System.Int32,System.Int32) استفاده شود.

public object CalculatedValue { get; }

مقدار ویژگی

object

OriginalValue

مقدار قدیمی سلول محاسبه شده را دریافت می‌کند. باید فقط در Aspose.Cells.AbstractCalculationMonitor.BeforeCalculate(System.Int32,System.Int32,System.Int32) و Aspose.Cells.AbstractCalculationMonitor.AfterCalculate(System.Int32,System.Int32,System.Int32) استفاده شود.

public object OriginalValue { get; }

مقدار ویژگی

object

ValueChanged

آیا مقدار سلول پس از محاسبه تغییر کرده است یا خیر. باید فقط در Aspose.Cells.AbstractCalculationMonitor.AfterCalculate(System.Int32,System.Int32,System.Int32) استفاده شود.

public bool ValueChanged { get; }

مقدار ویژگی

bool

متدها

AfterCalculate(int, int, int)

این متد را پیاده‌سازی کنید تا بعد از محاسبه یک سلول، عملیات تجاری انجام شود.

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

پارامترها

sheetIndex int

ایندکس شیت که سلول به آن تعلق دارد.

rowIndex int

ایندکس ردیف سلول

colIndex int

ایندکس ستون سلول

BeforeCalculate(int, int, int)

این متد را پیاده‌سازی کنید تا قبل از محاسبه یک سلول، عملیات تجاری انجام شود.

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

پارامترها

sheetIndex int

ایندکس شیت که سلول به آن تعلق دارد.

rowIndex int

ایندکس ردیف سلول

colIndex int

ایندکس ستون سلول

Interrupt(string)

protected void Interrupt(string msg)

پارامترها

msg string

OnCircular(IEnumerator)

این متد را پیاده‌سازی کنید تا هنگام محاسبه فرمول‌ها با ارجاعات دایره‌ای، عملیات تجاری انجام شود.

public virtual bool OnCircular(IEnumerator circularCellsData)

پارامترها

circularCellsData IEnumerator

IEnumerator با اقلام Aspose.Cells.CalculationCell که نمایانگر سلول‌هایی هستند که به ارجاعات دایره‌ای وابسته‌اند.

بازگشت

bool

آیا موتور فرمول نیاز به محاسبه آن سلول‌ها در دایره‌ای پس از این فراخوانی دارد یا خیر. True برای اجازه دادن به موتور فرمول برای ادامه محاسبه برای آن‌ها. False برای اجازه دادن به موتور فرمول برای فقط علامت‌گذاری آن سلول‌ها به عنوان محاسبه شده.

یادداشت‌ها

در پیاده‌سازی، کاربر همچنین می‌تواند مقدار مورد انتظار را به عنوان نتیجه محاسبه برای بخشی/تمامی آن سلول‌ها تنظیم کند تا موتور فرمول آن‌ها را به صورت بازگشتی محاسبه نکند.

 فارسی