Thanks a lot for your answer!
I've also find that i can "add" an temporary ContentControl "based" on an interop content control, which seems to work like an wrapper around the interop content control. Is my understanding right?
But still there's an weird issue here. This is my code snippet:
Microsoft.Office.Interop.Word.Document doc =
Microsoft.Office.Tools.Word.Document vstoDoc = Globals.Factory.GetVstoObject(Globals.ThisAddIn.Application.ActiveDocument);
int index = 1;
foreach (Microsoft.Office.Interop.Word.ContentControl nativeControl in doc.ContentControls)
if (nativeControl.Type ==
Microsoft.Office.Tools.Word.PictureContentControl tempControl =
"VSTORichTextControl" + (index++).ToString());
//Image image = Clipboard.GetImage();
Image image = new System.Drawing.Bitmap("d:/a.bmp", true);
tempControl.Image = image;
This code works well, i can see the picture content control's image is successfully set.
However, If instead of using an Image object loaded from the file, if I get the Image from the ClipBoard, the code still runs ok but i can't see the picture content control's Image is changed. I believe the image i got from the clipboard is definitely
valid, since this line of code always gives proper result:
Many thanks Cindy!