我有一个VSTO项目,点击功能区上的按钮,打开一个带有特定模板的新Word文档,然后使用自定义任务窗格打开它。在该窗格上是一个按钮,单击该按钮时,我想在doc模板中存在的表中添加一行。
目前,当点击任务窗格上的按钮时,我只是在运行时收到“命令失败”异常。这是全班。你可以看到我尝试了两种方法,但都失败了:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using word = Microsoft.Office.Interop.Word;
namespace TestWordAddin2010
{
public partial class NewDescDMtaskPane : UserControl
{
public NewDescDMtaskPane()
{
InitializeComponent();
}
private void addSpare_Click(object sender, EventArgs e)
{
Globals.ThisAddIn.Application.ActiveDocument.Tables[1].Rows.Add(Globals.ThisAddIn.Application.ActiveDocument.Tables[1].Rows[1]); //this doesn't work
//word.Table wordTable = Globals.ThisAddIn.Application.ActiveDocument.Tables[1];
//wordTable.Rows.Add(wordTable.Rows[1]); //neither does this work
}
}
}
任何帮助表示感谢。
答案 0 :(得分:0)
您的第一个表很可能包含合并的单元格。然后,您将无法访问Rows
集合中的各个行。
作为一种解决方法,您可以使用Selection
对象,如下所示:
ActiveDocument.Tables(1).Range.Select();
Application.Selection.Collapse();
Application.Selection.InsertRowsAbove();