jt
2021-06-10 5d0d028456874576560552f5a5c4e8b801786f11
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
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: DocXElement
    {
        internal Regex extractName = new Regex(@"DOCPROPERTY  (?<name>.*)  ");
        private string name;
 
        /// <summary>
        /// The custom property to display.
        /// </summary>
        public string Name { get { return name; } }
 
        internal DocProperty(DocX document, XElement xml):base(document, 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;
        }
    }
}