在Word中Table属性对话框上有一个alt text的标签,其下有Title和Description两个项目。然后再底部有Alertnative Text云云。许多人就被这个Alertnative Text给糊弄了,以为Table下有AlertnativeText属性。在发现Table下没有AlertnativeText属性后认为可能是在Table.Range.InlineShapes[index]下(因为InlineShape有AlertnativeText属性)。其实,这是个误导。在Table下有Table.Title和Table.Descr属性来对应的。下面是示例代码
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Xml.Linq;
using Microsoft.Office.Tools.Word;
using Microsoft.VisualStudio.Tools.Applications.Runtime;
using Office = Microsoft.Office.Core;
using Word = Microsoft.Office.Interop.Word;
//using MyLog4Net;
namespace WordDocument17
{
public partial class ThisDocument
{
private MyLogger mlog = new MyLogger(typeof(ThisDocument), "Debug.log");
private void ThisDocument_Startup(object sender, System.EventArgs e)
{
try
{
Word.Application wdApp = Application;
Word.Document wdDoc = wdApp.ActiveDocument;
Word.Table wdTable = wdDoc.Tables[1];
MessageBox.Show(wdTable.Title + "\n" + wdTable.Descr);
}
catch (Exception ex)
{
//mlog.ERROR(ex.Message + "\n" + ex.StackTrace);
}
}
private void ThisDocument_Shutdown(object sender, System.EventArgs e)
{
}
#region VSTO Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InternalStartup()
{
this.Startup += new System.EventHandler(ThisDocument_Startup);
this.Shutdown += new System.EventHandler(ThisDocument_Shutdown);
}
#endregion
}
}