2

Word 文書の余白にラベルを追加したいと考えています。日付ピッカーやコンボ ボックスなどをドキュメントに追加できることを見てきましたが、何を求めているのかわかりません。

次の方法で ControlCollection オブジェクトを取得できます。

Globals.Factory.GetVstoObject(myApplication.ActiveDocument).Controls

ただし、ラベルを追加する方法はありません。

VSTO を使用してドキュメントにラベルを追加する別の方法はありますか?

[編集]

したがって、WinFormラベルを挿入することはできましたが、この投稿で確認されているように、非常に遅いです:

http://connect.microsoft.com/VisualStudio/feedback/details/277090/adding-winform-controls-to-a-vsto-word-document-is-extremely-slow

だから私はまだ代替案を探しています。上記のスレッドで提案されているように、ラベルのような ContentControls が見つかりません。

4

1 に答える 1

0

そこで私が決めた解決策は、Word の図形を使用することでした。以下のコード スニペットは、ドキュメントにラベル形状を追加する方法を示しています。

Shape shape = 
   doc.Shapes.AddLabel(Office.MsoTextOrientation.msoTextOrientationHorizontal,
                                                                         left,
                                                                          top,
                                                                        width,
                                                                       height,
                                                                        range);

複数のラベルを追加するプロセスは決して高速ではありませんが、ドキュメントに winform コントロールを追加するよりもはるかに高速です。シェイプを使用すると、ページ上の好きな場所に配置する柔軟性も得られます。これは、ContentControls が提供しないものです。

于 2013-08-01T10:37:00.403 に答える