الحصول على النمط وتعيينه للخلايا

تنسيق الخلايا

هناك طريقتان لتنسيق الخلية، كما هو موضح أدناه.

استخدام GetStyle()

مع القطعة التالية من الكود، يتم تشغيل كائن النمط لكل خلية عند تنسيقها. إذا كانت العديد من الخلايا تخضع للتنسيق، فإن كمية كبيرة من الذاكرة يتم استهلاكها لأن كائن النمط هو كائن كبير. لن يتم تحرير هذه الكائنات حتى يتم استدعاء طريقة Workbook.Save.

C#

cell.GetStyle().Font.IsBold = true;

استخدام SetStyle()

النهج الأول سهل ومباشر, فلماذا أضفنا النهج الثاني؟

أضفنا النهج الثاني لتحسين استخدام الذاكرة. بعد استخدام طريقة Cell.GetStyle لاسترداد كائن النمط، قم بتعديله واستخدم طريقة Cell.SetStyle لتعيينه مرة أخرى لهذه الخلية. لن يتم الاحتفاظ بهذا الكائن وسيقوم .NET بجمع القمامة حينما لا يتم مراجعته.

عند استدعاء طريقة Cell.SetStyle، كائن النمط لا يتم حفظه لكل خلية. بدلاً من ذلك، نقارن هذا الكائن بمجموعة أطراف الكائن الداخلية لنرى ما إذا كان بإمكانه إعادة الاستخدام. يتم الاحتفاظ بكائنات النمط التي تختلف عن القائمة من الكائنات القائمة. وهذا يعني أنه لا يوجد سوى عدد قليل من الكائنات النمط لكل ملف إكسل بدلاً من الآلاف. بالنسبة لكل خلية، يتم الاحتفاظ بفهرس لمجموعة أطراف الكائن النمط.

C#

Style style = cell.GetStyle();

style.Font.IsBold = true;

cell.SetStyle(style);

مواضيع متقدمة