Word VSTO - Change the absolute positions' type?

时间:2015-07-28 16:34:56

标签: vb.net ms-word position vsto shape

I use the following VB.NET (VSTO) code to add a shape in MS-Word,

Dim app As Word.Application = Globals.ThisAddIn.Application
Dim doc As Word.Document = app.ActiveDocument
Dim left As Single = CSng(Convert.ToDouble(app.Selection.Information(Word.WdInformation.wdHorizontalPositionRelativeToPage)))
Dim top As Single = CSng(Convert.ToDouble(app.Selection.Information(Word.WdInformation.wdVerticalPositionRelativeToPage)))
Dim shape As Word.Shape = doc.Shapes.AddShape(1, left, top, 225.1F, 224.5F)

shape.Fill.BackColor.RGB = ColorTranslator.ToOle(Color.Transparent)
shape.Fill.Visible = Microsoft.Office.Core.MsoTriState.msoFalse
shape.Fill.Transparency = 0.0F
shape.Line.Transparency = 0.0F
shape.Line.Visible = Microsoft.Office.Core.MsoTriState.msoFalse

What this code does is, it adds a rectangle shape at cursor point and makes it transparent (both background and line).

Now I like to change the absolute positions' type. To explain further, when you select the rectangle shape, then if you select the Ribbon tab Format > Position > More Layout Options... as shown in the image below,

enter image description here

It will open the following dialog,

enter image description here

In the above dialog I like to change Column and Paragraph marked by the red rectangles into the type Margin. How to do this by code?

2 个答案:

答案 0 :(得分:1)

Word提供宏录制器。您可以使用它来获取在后台为您生成的代码。因此,您将找到完全应该使用哪些属性和方法来完成工作。有关详细信息,请参阅Record or run a macro

答案 1 :(得分:0)