public void PropertyTypes() { //ExStart //ExFor:DocumentProperty.ToBool //ExFor:DocumentProperty.ToInt //ExFor:DocumentProperty.ToDouble //ExFor:DocumentProperty.ToString //ExFor:DocumentProperty.ToDateTime //ExSummary:Shows various type conversion methods of custom document properties. Document doc = new Document(); CustomDocumentProperties properties = doc.CustomDocumentProperties; DateTime authDate = DateTime.Today; properties.Add("Authorized", true); properties.Add("Authorized By", "John Doe"); properties.Add("Authorized Date", authDate); properties.Add("Authorized Revision", doc.BuiltInDocumentProperties.RevisionNumber); properties.Add("Authorized Amount", 123.45); Assert.AreEqual(true, properties["Authorized"].ToBool()); Assert.AreEqual("John Doe", properties["Authorized By"].ToString()); Assert.AreEqual(authDate, properties["Authorized Date"].ToDateTime()); Assert.AreEqual(1, properties["Authorized Revision"].ToInt()); Assert.AreEqual(123.45d, properties["Authorized Amount"].ToDouble()); //ExEnd }
private void button1_Click(object sender, EventArgs e) { //Create a document Document document = new Document(); //Load the document from disk. document.LoadFromFile(@"..\..\..\..\..\..\Data\Sample.docx"); //Set the build-in Properties. document.BuiltinDocumentProperties.Title = "Document Demo Document"; document.BuiltinDocumentProperties.Author = "James"; document.BuiltinDocumentProperties.Company = "e-iceblue"; document.BuiltinDocumentProperties.Keywords = "Document, Property, Demo"; document.BuiltinDocumentProperties.Comments = "This document is just a demo."; //Set the custom properties. CustomDocumentProperties custom = document.CustomDocumentProperties; custom.Add("e-iceblue", true); custom.Add("Authorized By", "John Smith"); custom.Add("Authorized Date", DateTime.Today); //Save the document. document.SaveToFile("Output.docx", FileFormat.Docx); //Launch the Word file. WordDocViewer("Output.docx"); }
public void CustomAdd() { //ExStart //ExFor:CustomDocumentProperties.Add(String,String) //ExFor:CustomDocumentProperties.Add(String,Boolean) //ExFor:CustomDocumentProperties.Add(String,int) //ExFor:CustomDocumentProperties.Add(String,DateTime) //ExFor:CustomDocumentProperties.Add(String,Double) //ExId:AddCustomProperties //ExSummary:Checks if a custom property with a given name exists in a document and adds few more custom document properties. Document doc = new Document(MyDir + "Properties.doc"); CustomDocumentProperties docProperties = doc.CustomDocumentProperties; if (docProperties["Authorized"] == null) { docProperties.Add("Authorized", true); docProperties.Add("Authorized By", "John Smith"); docProperties.Add("Authorized Date", DateTime.Today); docProperties.Add("Authorized Revision", doc.BuiltInDocumentProperties.RevisionNumber); docProperties.Add("Authorized Amount", 123.45); } //ExEnd }
public void DocumentPropertyCollection() { //ExStart //ExFor:CustomDocumentProperties.Add(String,String) //ExFor:CustomDocumentProperties.Add(String,Boolean) //ExFor:CustomDocumentProperties.Add(String,int) //ExFor:CustomDocumentProperties.Add(String,DateTime) //ExFor:CustomDocumentProperties.Add(String,Double) //ExFor:Properties.DocumentPropertyCollection //ExFor:Properties.DocumentPropertyCollection.Clear //ExFor:Properties.DocumentPropertyCollection.Contains(System.String) //ExFor:Properties.DocumentPropertyCollection.GetEnumerator //ExFor:Properties.DocumentPropertyCollection.IndexOf(System.String) //ExFor:Properties.DocumentPropertyCollection.RemoveAt(System.Int32) //ExFor:Properties.DocumentPropertyCollection.Remove //ExSummary:Shows how to add custom properties to a document. // Create a blank document and get its custom property collection Document doc = new Document(); CustomDocumentProperties properties = doc.CustomDocumentProperties; // The collection will be empty by default Assert.AreEqual(0, properties.Count); // We can populate it with key/value pairs with a variety of value types properties.Add("Authorized", true); properties.Add("Authorized By", "John Doe"); properties.Add("Authorized Date", DateTime.Today); properties.Add("Authorized Revision", doc.BuiltInDocumentProperties.RevisionNumber); properties.Add("Authorized Amount", 123.45); // Custom properties are automatically sorted in alphabetic order Assert.AreEqual(1, properties.IndexOf("Authorized Amount")); Assert.AreEqual(5, properties.Count); // Enumerate and print all custom properties using (IEnumerator <DocumentProperty> enumerator = properties.GetEnumerator()) { while (enumerator.MoveNext()) { Console.WriteLine($"Name: \"{enumerator.Current.Name}\", Type: \"{enumerator.Current.Type}\", Value: \"{enumerator.Current.Value}\""); } } // We can view/edit custom properties by opening the document and looking in File > Properties > Advanced Properties > Custom doc.Save(ArtifactsDir + "Properties.DocumentPropertyCollection.docx"); // We can remove elements from the property collection by index or by name properties.RemoveAt(1); Assert.False(properties.Contains("Authorized Amount")); Assert.AreEqual(4, properties.Count); properties.Remove("Authorized Revision"); Assert.False(properties.Contains("Authorized Revision")); Assert.AreEqual(3, properties.Count); // We can also empty the entire custom property collection at once properties.Clear(); Assert.AreEqual(0, properties.Count); //ExEnd }
public static void CustomAdd(string dataDir) { // ExStart:CustomAdd Document doc = new Document(dataDir + "Properties.doc"); CustomDocumentProperties props = doc.CustomDocumentProperties; if (props["Authorized"] == null) { props.Add("Authorized", true); props.Add("Authorized By", "John Smith"); props.Add("Authorized Date", DateTime.Today); props.Add("Authorized Revision", doc.BuiltInDocumentProperties.RevisionNumber); props.Add("Authorized Amount", 123.45); } // ExEnd:CustomAdd }
public void AddCustomDocumentProperties() { //ExStart:AddCustomDocumentProperties Document doc = new Document(MyDir + "Properties.docx"); CustomDocumentProperties customDocumentProperties = doc.CustomDocumentProperties; if (customDocumentProperties["Authorized"] != null) { return; } customDocumentProperties.Add("Authorized", true); customDocumentProperties.Add("Authorized By", "John Smith"); customDocumentProperties.Add("Authorized Date", DateTime.Today); customDocumentProperties.Add("Authorized Revision", doc.BuiltInDocumentProperties.RevisionNumber); customDocumentProperties.Add("Authorized Amount", 123.45); //ExEnd:AddCustomDocumentProperties }
public void DocumentPropertyCollection() { //ExStart //ExFor:CustomDocumentProperties.Add(String,String) //ExFor:CustomDocumentProperties.Add(String,Boolean) //ExFor:CustomDocumentProperties.Add(String,int) //ExFor:CustomDocumentProperties.Add(String,DateTime) //ExFor:CustomDocumentProperties.Add(String,Double) //ExFor:DocumentProperty.Type //ExFor:Properties.DocumentPropertyCollection //ExFor:Properties.DocumentPropertyCollection.Clear //ExFor:Properties.DocumentPropertyCollection.Contains(System.String) //ExFor:Properties.DocumentPropertyCollection.GetEnumerator //ExFor:Properties.DocumentPropertyCollection.IndexOf(System.String) //ExFor:Properties.DocumentPropertyCollection.RemoveAt(System.Int32) //ExFor:Properties.DocumentPropertyCollection.Remove //ExFor:PropertyType //ExSummary:Shows how to work with a document's custom properties. Document doc = new Document(); CustomDocumentProperties properties = doc.CustomDocumentProperties; Assert.AreEqual(0, properties.Count); // Custom document properties are key-value pairs that we can add to the document. properties.Add("Authorized", true); properties.Add("Authorized By", "John Doe"); properties.Add("Authorized Date", DateTime.Today); properties.Add("Authorized Revision", doc.BuiltInDocumentProperties.RevisionNumber); properties.Add("Authorized Amount", 123.45); // The collection sorts the custom properties in alphabetic order. Assert.AreEqual(1, properties.IndexOf("Authorized Amount")); Assert.AreEqual(5, properties.Count); // Print every custom property in the document. using (IEnumerator <DocumentProperty> enumerator = properties.GetEnumerator()) { while (enumerator.MoveNext()) { Console.WriteLine($"Name: \"{enumerator.Current.Name}\"\n\tType: \"{enumerator.Current.Type}\"\n\tValue: \"{enumerator.Current.Value}\""); } } // Display the value of a custom property using a DOCPROPERTY field. DocumentBuilder builder = new DocumentBuilder(doc); FieldDocProperty field = (FieldDocProperty)builder.InsertField(" DOCPROPERTY \"Authorized By\""); field.Update(); Assert.AreEqual("John Doe", field.Result); // We can find these custom properties in Microsoft Word via "File" -> "Properties" > "Advanced Properties" > "Custom". doc.Save(ArtifactsDir + "DocumentProperties.DocumentPropertyCollection.docx"); // Below are three ways or removing custom properties from a document. // 1 - Remove by index: properties.RemoveAt(1); Assert.False(properties.Contains("Authorized Amount")); Assert.AreEqual(4, properties.Count); // 2 - Remove by name: properties.Remove("Authorized Revision"); Assert.False(properties.Contains("Authorized Revision")); Assert.AreEqual(3, properties.Count); // 3 - Empty the entire collection at once: properties.Clear(); Assert.AreEqual(0, properties.Count); //ExEnd }
internal static void smethod_1(Class582 A_0) { int num = 4; CustomDocumentProperties customDocumentProperties = A_0.Interface50.imethod_0().CustomDocumentProperties; Class394 class2 = A_0.imethod_1(); while (class2.method_9(BookmarkStart.b("椩夫崭䐯崱夳爵圷夹䤻匽┿ⱁぃᙅ㩇╉㱋⭍≏♑㵓㍕⭗", num))) { string name = smethod_2(class2.method_1()); string str5 = null; string str6 = null; while (class2.method_19()) { string str3 = class2.method_1(); if (str3 != null) { if (!(str3 == BookmarkStart.b("丩堫", num))) { if (str3 == BookmarkStart.b("䘩䔫䀭嬯", num)) { str5 = class2.method_3(); } } else { str6 = class2.method_3(); } } } string str4 = class2.method_21(); string str = str6; if (str != null) { if (str != BookmarkStart.b("天堫尭夯就匳", num)) { if (str != BookmarkStart.b("䰩䀫䄭儯䘱", num)) { if (str != BookmarkStart.b("䠩䌫䄭尯圱唳堵", num)) { if ((str == BookmarkStart.b("丩䴫娭唯昱崳嬵崷", num)) || (str == BookmarkStart.b("丩䴫娭唯昱崳嬵崷ᐹ䠻䐽", num))) { customDocumentProperties.Add(name, Class1041.smethod_3(str4)); } } else { customDocumentProperties.Add(name, class2.method_70(str4)); } } else { double num2 = Class1041.smethod_12(str4); if (((int)num2) == num2) { customDocumentProperties.Add(name, (int)num2); } else { customDocumentProperties.Add(name, num2); } } } else { DocumentProperty property = customDocumentProperties.Add(name, str4); if (Class567.smethod_16(str5)) { property.LinkSource = str5; } } } } }