| @@ -0,0 +1,32 @@ | |||
| using System; | |||
| using System.Collections.Generic; | |||
| using System.Linq; | |||
| using System.Text; | |||
| using System.Xml.Linq; | |||
| using System.Text.RegularExpressions; | |||
| namespace Novacode | |||
| { | |||
| /// <summary> | |||
| /// Represents a field of type document property. This field displays the value stored in a custom property. | |||
| /// </summary> | |||
| public class DocProperty | |||
| { | |||
| internal Regex extractName = new Regex(@"DOCPROPERTY (?<name>.*) "); | |||
| internal XElement xml; | |||
| private string name; | |||
| /// <summary> | |||
| /// The custom property to display. | |||
| /// </summary> | |||
| 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; | |||
| } | |||
| } | |||
| } | |||