DataTplCalcFormat.cs
C# VB
//// This code is part of Document Solutions for Word demos.// Copyright (c) MESCIUS inc. All rights reserved.//using System;using System.Globalization;using GrapeCity.Documents.Word;
namespace DsWordWeb.Demos{ // This example demonstrates the use of 'calc' Format function // with optional format string and locale arguments. public class DataTplCalcFormat { public GcWordDocument CreateDocx() { var dsDate = new DateTime[] { new DateTime(2023, 04, 12) }; var dsNum = new double[] { 123.456 };
var doc = new GcWordDocument(); var list = doc.ListTemplates.Add(BuiltInListTemplateId.BulletDefault, "myListTemplate"); var style = doc.Styles[BuiltInStyleId.ListParagraph];
doc.DataTemplate.DataSources.Add("dsDate", dsDate); doc.DataTemplate.DataSources.Add("dsNum", dsNum);
var paras = doc.Body.Paragraphs; var p = paras.Add("Date formatting examples:", style); p.ListFormat.Template = list; p = paras.Add("Date with default formatting: {{calc Format(dsDate.value)}}", style); p.ListFormat.Template = list; p.ListFormat.LevelNumber = 1; p = paras.Add("Date formatted as ('D', 'en-US'): {{calc Format(dsDate.value, \"D\", \"en-US\")}}", style); p.ListFormat.Template = list; p.ListFormat.LevelNumber = 1; p = paras.Add("Date formatted as ('D', 'fr-FR'): {{calc Format(dsDate.value, \"D\", \"fr-FR\")}}", style); p.ListFormat.Template = list; p.ListFormat.LevelNumber = 1; p = paras.Add("Date formatted as ('D', 'ja-JP'): {{calc Format(dsDate.value, \"D\", \"ja-JP\")}}", style); p.ListFormat.Template = list; p.ListFormat.LevelNumber = 1;
p = paras.Add("Number formatting examples:", style); p.ListFormat.Template = list; p = paras.Add("Number with default formatting: {{calc Format(dsNum.value)}}", style); p.ListFormat.Template = list; p.ListFormat.LevelNumber = 1; p = paras.Add("Number formatted as ('C', 'en-US'): {{calc Format(dsNum.value, \"C\", \"en-US\")}}", style); p.ListFormat.Template = list; p.ListFormat.LevelNumber = 1; p = paras.Add("Number formatted as ('C', 'fr-FR'): {{calc Format(dsNum.value, \"C\", \"fr-FR\")}}", style); p.ListFormat.Template = list; p.ListFormat.LevelNumber = 1; p = paras.Add("Number formatted as ('C3', 'ja-JP'): {{calc Format(dsNum.value, \"C3\", \"ja-JP\")}}", style); p.ListFormat.Template = list; p.ListFormat.LevelNumber = 1;
p = paras.Add("Expression formatting examples:", style); p.ListFormat.Template = list; p = paras.Add("Numeric expression: {{calc Format(dsNum.value / 2)}}", style); p.ListFormat.Template = list; p.ListFormat.LevelNumber = 1; p = paras.Add("Boolean expression: {{calc Format(IsFirst(dsNum.value))}}", style); p.ListFormat.Template = list; p.ListFormat.LevelNumber = 1;
doc.DataTemplate.Process(CultureInfo.GetCultureInfo("en-US"));
// Done: return doc; } }}