2011-03-24 34 views
1

我確實需要在有限的晚期MS Word上添加一行到表。請參閱我的代碼here ...將行添加到後期限定的MS Word表中

在代碼上,您可以看到我必須實現代碼功能public void AddNewRow(int tableId)

在這裏,我確實需要添加一個新的BLANK行,因爲我要添加到表中的行數因數據集而異。

任何想法如何做到這一點......?更好,如果你能共享代碼...

(其他的代碼工作完美ARES)

我使用的.NET版本2.0

+0

難道你不能在這裏發佈相關的片段嗎? – Kobi 2011-03-24 06:11:13

+0

你可以在Delphi中這樣做... – JCTLK 2011-03-24 10:25:57

+0

@JCTLK:Delphi不是C#。德爾福能做什麼並不相關。 – cHao 2011-03-29 09:33:56

回答

2

我找到了答案我的自我,認爲這將有助於你所有...

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); 
      } 
     } 
    }