如何并排放置2个项目,例如复选框和标签而不在Interop Word中创建新行?
这是我正在使用的代码。它正在创建一个新行,因为我将每个项目放在一个段落中。你是如何在一条线上做到的?
//CheckBox
Word.Paragraph checkBoxparagraph = document.Paragraphs.Add(ref missing);
Word.ContentControl checkbox = checkBoxparagraph.Range.ContentControls.Add(Word.WdContentControlType.wdContentControlCheckBox);
checkBoxparagraph.Range.InsertParagraphBefore();
//Label
Word.Paragraph label = document.Paragraphs.Add(ref missing);
label.Range.Text = "Checkbox Label";
label.Range.InsertParagraphAfter();
这是代码的输出:
答案 0 :(得分:0)
也许有更好的方法,但我会将其包裹在内联形状中。很抱歉没有打算将它转换为C#,但你应该得到它的要点。如果你喜欢这个解决方案,你可能想要修改文本框的样式,高度和宽度
Sub CheckBoxLabel()
Dim oDoc As Document
Dim textBox As Shape
Dim oRng As Range
Set oDoc = ActiveDocument
Set oRng = oDoc.Paragraphs(1).Range
oRng.Text = "My label"
Set textBox = oDoc.Shapes.AddTextbox(msoTextOrientationHorizontal, 0, 0, 40, 40, oRng.Characters(1))
textBox.ConvertToInlineShape
Set checkBox = textBox.TextFrame.TextRange.ContentControls.Add(wdContentControlCheckBox)
End Sub