.net中VBA读取Word的Dialog的内在属性。

来源:互联网 发布:淘宝搜索技术 黑搜索 编辑:程序博客网 时间:2024/05/16 00:28

原始技术参考文件:

http://msdn.microsoft.com/en-us/library/3xxe951d

下面是VBA中Dialog的属性列表。但是在.net中,无法以直接的方式把这些属性值读取出来。

http://msdn.microsoft.com/en-us/library/bb214033(office.12).aspx

 

利用反射,读取Dialog中的内在属性。

下面一段代码是读取Word中图片的环绕方式设置的代码。

                            Object missing = System.Reflection.Missing.Value;                            shape.Select(ref missing);                            Dialog dlg = this.DR.Application.Dialogs[WdWordDialog.wdDialogFormatDrawingObject];                            System.Type dialogType = dlg.GetType();                            string wrap = dialogType.InvokeMember("Wrap",                                System.Reflection.BindingFlags.GetProperty | System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance,                                null, dlg, null, System.Globalization.CultureInfo.InvariantCulture).ToString();                            //wrap=5,6 分别表示,文字上方,文字下方。