FieldDdeAutoInsertAsPicture Property |
Namespace: Aspose.Words.Fields
public void FieldLinkedObjectsAsText(InsertLinkedObjectAs insertLinkedObjectAs) { Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Insert fields containing text from another document and present them as text (see InsertLinkedObjectAs enum) builder.Writeln("FieldLink:\n"); InsertFieldLink(builder, insertLinkedObjectAs, "Word.Document.8", MyDir + "Document.docx", null, true); builder.Writeln("FieldDde:\n"); InsertFieldDde(builder, insertLinkedObjectAs, "Excel.Sheet", MyDir + "Spreadsheet.xlsx", "Sheet1!R1C1", true, true); builder.Writeln("FieldDdeAuto:\n"); InsertFieldDdeAuto(builder, insertLinkedObjectAs, "Excel.Sheet", MyDir + "Spreadsheet.xlsx", "Sheet1!R1C1", true); doc.UpdateFields(); doc.Save(ArtifactsDir + "Field.LINK.DDE.DDEAUTO.docx"); } public void FieldLinkedObjectsAsImage(InsertLinkedObjectAs insertLinkedObjectAs) { Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Insert one cell from a spreadsheet as an image (see InsertLinkedObjectAs enum) builder.Writeln("FieldLink:\n"); InsertFieldLink(builder, insertLinkedObjectAs, "Excel.Sheet", MyDir + "MySpreadsheet.xlsx", "Sheet1!R2C2", true); builder.Writeln("FieldDde:\n"); InsertFieldDde(builder, insertLinkedObjectAs, "Excel.Sheet", MyDir + "Spreadsheet.xlsx", "Sheet1!R1C1", true, true); builder.Writeln("FieldDdeAuto:\n"); InsertFieldDdeAuto(builder, insertLinkedObjectAs, "Excel.Sheet", MyDir + "Spreadsheet.xlsx", "Sheet1!R1C1", true); doc.UpdateFields(); doc.Save(ArtifactsDir + "Field.LINK.DDE.DDEAUTO.AsImage.docx"); } /// <summary> /// Use a document builder to insert a LINK field and set its properties according to parameters. /// </summary> private static void InsertFieldLink(DocumentBuilder builder, InsertLinkedObjectAs insertLinkedObjectAs, string progId, string sourceFullName, string sourceItem, bool shouldAutoUpdate) { FieldLink field = (FieldLink)builder.InsertField(FieldType.FieldLink, true); switch (insertLinkedObjectAs) { case InsertLinkedObjectAs.Text: field.InsertAsText = true; break; case InsertLinkedObjectAs.Unicode: field.InsertAsUnicode = true; break; case InsertLinkedObjectAs.Html: field.InsertAsHtml = true; break; case InsertLinkedObjectAs.Rtf: field.InsertAsRtf = true; break; case InsertLinkedObjectAs.Picture: field.InsertAsPicture = true; break; case InsertLinkedObjectAs.Bitmap: field.InsertAsBitmap = true; break; } field.AutoUpdate = shouldAutoUpdate; field.ProgId = progId; field.SourceFullName = sourceFullName; field.SourceItem = sourceItem; builder.Writeln("\n"); } /// <summary> /// Use a document builder to insert a DDE field and set its properties according to parameters. /// </summary> private static void InsertFieldDde(DocumentBuilder builder, InsertLinkedObjectAs insertLinkedObjectAs, string progId, string sourceFullName, string sourceItem, bool isLinked, bool shouldAutoUpdate) { FieldDde field = (FieldDde)builder.InsertField(FieldType.FieldDDE, true); switch (insertLinkedObjectAs) { case InsertLinkedObjectAs.Text: field.InsertAsText = true; break; case InsertLinkedObjectAs.Unicode: field.InsertAsUnicode = true; break; case InsertLinkedObjectAs.Html: field.InsertAsHtml = true; break; case InsertLinkedObjectAs.Rtf: field.InsertAsRtf = true; break; case InsertLinkedObjectAs.Picture: field.InsertAsPicture = true; break; case InsertLinkedObjectAs.Bitmap: field.InsertAsBitmap = true; break; } field.AutoUpdate = shouldAutoUpdate; field.ProgId = progId; field.SourceFullName = sourceFullName; field.SourceItem = sourceItem; field.IsLinked = isLinked; builder.Writeln("\n"); } /// <summary> /// Use a document builder to insert a DDEAUTO field and set its properties according to parameters. /// </summary> private static void InsertFieldDdeAuto(DocumentBuilder builder, InsertLinkedObjectAs insertLinkedObjectAs, string progId, string sourceFullName, string sourceItem, bool isLinked) { FieldDdeAuto field = (FieldDdeAuto)builder.InsertField(FieldType.FieldDDEAuto, true); switch (insertLinkedObjectAs) { case InsertLinkedObjectAs.Text: field.InsertAsText = true; break; case InsertLinkedObjectAs.Unicode: field.InsertAsUnicode = true; break; case InsertLinkedObjectAs.Html: field.InsertAsHtml = true; break; case InsertLinkedObjectAs.Rtf: field.InsertAsRtf = true; break; case InsertLinkedObjectAs.Picture: field.InsertAsPicture = true; break; case InsertLinkedObjectAs.Bitmap: field.InsertAsBitmap = true; break; } field.ProgId = progId; field.SourceFullName = sourceFullName; field.SourceItem = sourceItem; field.IsLinked = isLinked; } public enum InsertLinkedObjectAs { // LinkedObjectAsText Text, Unicode, Html, Rtf, // LinkedObjectAsImage Picture, Bitmap }