2009-04-30 245 views
51

我创建了一个App.config文件在我的WPF应用程序:如何在WPF应用程序中使用App.config文件?

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <appsettings> 
    <add key="xmlDataDirectory" value="c:\testdata"/> 
    </appsettings> 
</configuration> 

然后我试着用这个读值出:

string xmlDataDirectory = ConfigurationSettings.AppSettings.Get("xmlDataDirectory"); 

但它说,这是过时,我应该使用我无法找到的ConfigurationManager,甚至在类视图中搜索。

有谁知道如何在WPF中使用像这样的配置文件?

回答

60

你必须引用System.Configuration组件,其GAC

ConfigurationManager中的使用是不特定的WPF:它是访问配置信息用于任何类型的应用

请参阅Msdn的priviledged方式欲了解更多信息

希望它有帮助!

塞德里克

+6

是,就是这样,我不得不改变从appsettings到appSettings的名称,将System.Configuration引用添加到我的项目中,然后使用以下代码:string xmlDataDirectory = ConfigurationManager.AppSettings.Get(“xmlDataDirectory”); – 2009-04-30 10:02:29

14

在你的app.config您appsetting改变

<applicationSettings> 
    <WpfApplication1.Properties.Settings> 
     <setting name="appsetting" serializeAs="String"> 
      <value>c:\testdata.xml</value> 
     </setting> 
    </WpfApplication1.Properties.Settings> 
</applicationSettings> 

然后在后台代码

string xmlDataDirectory = WpfApplication1.Properties.Settings.Default.appsetting.ToString() 

HTH

1

这也适用

WpfApplication1.Properties.Settings.Default["appsetting"].ToString() 
4

您必须在解决方案中添加对System.configuration的引用。还包括“使用System.Configuration;”一旦你这样做,你将有权访问所有的配置设置。

5

您必须通过资源管理器参考System.Configuration(不仅可以追加using System.Configuration)。然后你可以写:

string xmlDataDirectory = 
    System.Configuration.ConfigurationManager.AppSettings.Get("xmlDataDirectory"); 

经过VS2010测试(感谢www.developpez.net)。 希望这有助于。

+0

是的,右键单击References并从Reference Manager添加System.Configuration。谢谢! – 2018-01-11 20:10:16

2

您可以通过app.config文件的属性将配置文件模式更改回DotNetConfig.xsd。要查找所需架构的目标,您可以按名称搜索它或创建winforms应用程序,添加到项目配置文件,并在其属性中找到文件的完整路径。

10

在我来说,我也跟着使用以下步骤系统

的App.config

<configuration> 
    <startup> 
     <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> 
    </startup> 

<appSettings> 
    <add key="POCPublishSubscribeQueueName" value="FormatName:Direct=OS:localhost\Private$\POCPublishSubscribe"/> 
</appSettings> 

</configuration> 

新增System.Configuartion到我的解决方案

增加。在顶部

文件配置语句然后使用下面的语句

string queuePath = ConfigurationManager.AppSettings["POCPublishSubscribeQueueName"].ToString(); 
-1

我有一个类库WPF项目,我用:

'Read Settings 
Dim value as string = My.Settings.my_key 
value = "new value" 

'Write Settings 
My.Settings.my_key = value 
My.Settings.Save() 
相关问题