using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Xml.Linq; using System.Text.RegularExpressions; namespace Novacode { /// /// Represents a field of type document property. This field displays the value stored in a custom property. /// public class DocProperty { internal Regex extractName = new Regex(@"DOCPROPERTY (?.*) "); internal XElement xml; private string name; /// /// The custom property to display. /// public string Name { get { return name; } } internal DocProperty(XElement xml) { this.xml = xml; string instr = xml.Attribute(XName.Get("instr", "http://schemas.openxmlformats.org/wordprocessingml/2006/main")).Value; this.name = extractName.Match(instr.Trim()).Groups["name"].Value; } } }