1

レイト バウンド MS Word のテーブルに行を追加する必要があります。ここで私のコードを見てください...

コードでは、 function のコードを実装する必要があることがわかりますpublic void AddNewRow(int tableId)

ここでは、テーブルに追加する行数が DataSet によって異なるため、新しい BLANK 行を追加する必要があります。

それを行う方法はありますか...?コードを共有できればもっと良い...

(他の部分のコードは完全に機能しています)

.Net バージョン 2.0 を使用しています

4

2 に答える 2

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);
            }
        }
    }
于 2011-03-24T10:22:17.330 に答える
-1
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/

于 2011-03-24T06:15:14.820 に答える