Word中关于Table的alt text的编程问题

在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
    }
}



posted @ 2012-06-20 15:53  许阳 无锡  阅读(573)  评论(0编辑  收藏  举报