ReplaceInTemplate.cs
C# VB
//// This code is part of Document Solutions for Word demos.// Copyright (c) MESCIUS inc. All rights reserved.//using System;using System.IO;using GrapeCity.Documents.Word;
namespace DsWordWeb.Demos{ // This sample shows how to fill a template document with data // using the RangeBase.Replace extension method provided by // the RangeBaseFindReplaceExtensions class. // // The template document is similar to the document generated by // the ProcurementLetter sample, but the data values in that document // were changed to template placeholders (in the form '__%<name>%__') // using MS Word. In the sample, we use the text replace functionality // to change the placeholders back to original data. The resulting // document can be viewed by running the ProcurementLetterTpl sample. // // In a real life application, the same approach can be used for example // to go over a record set, generating a document for each record. public class ReplaceInTemplate { public GcWordDocument CreateDocx() { // Placeholders and sample data: (string placeholder, string data)[] placeholderData = { ("__%c_name%__", "Nancy Davolio"), ("__%c_title%__", "Chief Procurement Officer"), ("__%c_phone%__", "555-543-5432"), ("__%c_url%__", "www.acmeinc.com"), ("__%c_address%__", "5432 Street West, Townsvilla, State 54321"), ("__%to_name%__", "Mark"), ("__%dlr_name%__", "AMA Ltd"), ("__%order_no%__", "8393"), };
// Load the document: var doc = new GcWordDocument(); doc.Load(Path.Combine("Resources", "WordDocs", "ProcurementLetterTpl.docx"));
// Replace all placeholders in the body with sample data values: foreach ((string placeholder, string data) pair in placeholderData) doc.Body.Replace(pair.placeholder, pair.data);
// Done: return doc; } }}