Domanda

Devo aggiungere una riga a una tabella su MS Word con delimitazione tardiva.Consulta il mio codice qui ...

Sul codice puoi vedere che devo implementare il codice per la funzione public void AddNewRow(int tableId).

Qui devo aggiungere una nuova riga BLANK, poiché il conteggio delle righe che aggiungerò alla tabella varia a seconda del DataSet.

Qualche idea su come farlo ...?Meglio se puoi condividere il codice ...

(Altre aree di codice funzionano perfettamente)

Sto usando .Net versione 2.0

È stato utile?

Soluzione

Ho trovato una risposta da me, penso che questo sarà utile a tutti voi ...

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

Altri suggerimenti

Table table = tables[tableid];

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

Fare riferimento al seguente link per maggiori informazioni

http://jgvimalan.wordpress.com/2011/02/08/Add-Rows-Table-in-ms-word-document-using-c/

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top