2013-05-31 76 views
0

我有一个微软Word项目中,我建立了一些窗格为用户完成一些信息,其在书签自动填充整个文档中的文本。我只是试图找到保存这些值的最佳方式,以便在用户输入值后重新打开文档时,我可以轻松地检索这些值。保存自定义设置或Word文档中的属性

我可以尝试从书签本身检索它们,但当然在很多情况下,它们包含文本值,当我希望将主键存储在用户不可见的某个位置,并且万一它们发生更改对那些将使逆向工程不可能的价值的文本。

我似乎无法找到关于在Word文档中保存自定义属性的任何信息,因此,如果能够实现这一点,我们将非常感激。

非常感谢!

回答

1

我会建议使用自定义文档属性。那里你可以键值方式(至少如果它类似于Excel)。 我发现了一个线索,解释如何做到这一点: Set custom document properties with Word interop

+0

这看起来很完美谢谢你!将有一个去 – ebooyens

+0

玩得开心:)请测试自定义文档属性是否会被覆盖。在Excel中,他们不是,但你永远不知道;) –

0

玩这个周围公平一点,这是我的最终代码的情况下,之后,它可以帮助别人,我发现这种格式更容易理解和使用工作。这一切都被基督教基础上,引用的文章:

using Office = Microsoft.Office.Core; 
using Word = Microsoft.Office.Interop.Word; 
using System.Reflection; 

      Office.DocumentProperties properties = (Office.DocumentProperties)Globals.ThisDocument.CustomDocumentProperties; 

      //Check if the property exists already 
      if (properties.Cast<Office.DocumentProperty>().Where(c => c.Name == "nameofproperty").Count() == 0) 
      { 
       //Then add the property and value 
       properties.Add("nameofproperty", false, Office.MsoDocProperties.msoPropertyTypeString, "yourvalue"); 
      } 
      else 
      { 
       //else just update the value 
       properties["nameofproperty"].Value = "yourvalue";      
      } 

在检索它作为使用相同的三条线在顶部获得对象的属性,可能使用该代码的if语句容易值方面检查它是否存在,并检索它使用properties["nameofproperty"].Value

相关问题