سؤال

أحتاج إلى إضافة صف إلى جدول في برنامج MS Word المحدود متأخرًا.يرجى الاطلاع على الكود الخاص بي هنا...

على الكود يمكنك أن ترى أنه يجب علي تنفيذ التعليمات البرمجية للوظيفة public void AddNewRow(int tableId).

أحتاج هنا إلى إضافة صف فارغ جديد، نظرًا لأن عدد الصفوف الذي سأضيفه إلى الجدول يختلف وفقًا لمجموعة البيانات.

أي فكرة عن كيفية القيام بذلك ...؟من الأفضل أن تتمكن من مشاركة الكود ...

(مناطق أخرى من التعليمات البرمجية تعمل بشكل مثالي)

أنا أستخدم .Net الإصدار 2.0

هل كانت مفيدة؟

المحلول

لقد وجدت الإجابة بنفسي، وأعتقد أن هذا سيكون مفيدًا لكم جميعًا ...

public void AddNewRow(int tableId, int rowCount)
    {
        object[] oParams = new object[1];
        oParams[0] = tableId;
        object table_ = tables.GetType().InvokeMember("Item",
        BindingFlags.InvokeMethod,
        null,
        tables,
        oParams);
        object rows = table_.GetType().InvokeMember("Rows",
        System.Reflection.BindingFlags.GetProperty,
        null,
        table_,
        null);
        oParams = new object[1];
        if (rowCount == 1)
        {
            object row = rows.GetType().InvokeMember("Add",
            BindingFlags.InvokeMethod,
            null,
            rows,
            null);
        }
        else
        {
            for (int i = 0; i < rowCount; i++)
            {
                object row = rows.GetType().InvokeMember("Add",
            BindingFlags.InvokeMethod,
            null,
            rows,
            null);
            }
        }
    }

نصائح أخرى

Table table = tables[tableid];

  for (int i = 0; i < 20; i++) // I took it 20 just for example
   {
     Row row = table.Rows.Add();                   
   }

الرجوع إلى الرابط التالي لمزيد من المعلومات

http://jgvimalan.wordpress.com/2011/02/08/add-rows-to-table-in-ms-word-document-using-c/

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top