Class AbstractCalculationMonitor
Namespace: Aspose.Cells
Assembly: Aspose.Cells.dll (25.2.0)
راقب المستخدم لتتبع تقدم حساب المعادلة.
public abstract class AbstractCalculationMonitor
الوراثة
object ← AbstractCalculationMonitor
الأعضاء الموروثة
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; }
قيمة الخاصية
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; }
قيمة الخاصية
ValueChanged
ما إذا كانت قيمة الخلية قد تغيرت بعد الحساب. يجب استخدامه فقط في Aspose.Cells.AbstractCalculationMonitor.AfterCalculate(System.Int32,System.Int32,System.Int32).
public bool ValueChanged { get; }
قيمة الخاصية
الطرق
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 تمثل خلايا تعتمد على مراجع دائرية.
الإرجاع
ما إذا كان محرك المعادلة يحتاج إلى حساب تلك الخلايا في الدائرة بعد هذه المكالمة. True للسماح لمحرك المعادلة بالاستمرار في حسابها. False للسماح لمحرك المعادلة فقط بتحديد تلك الخلايا كـ محسوبة.
ملاحظات
في التنفيذ، يمكن للمستخدم أيضًا تعيين القيمة المتوقعة كنتيجة محسوبة لجزء/كل من تلك الخلايا حتى لا يحسبها محرك المعادلة بشكل متكرر.