如何在WPF应用程序中使用App.config文件?
我在我的WPF应用程序中创build了一个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,我找不到,甚至在类视图中search。
有谁知道如何在WPF中使用这样的configuration文件?
您必须引用GAC中的System.Configuration程序集
ConfigurationManager的使用不是WPF特有的:它是访问任何types的应用程序的configuration信息的特权方式
请参阅Msdn获取更多信息
希望能帮助到你 !
塞德里克
在你的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
在我的情况下,我遵循以下步骤
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到我的解决scheme
在文件顶部添加使用System.Configuration语句
然后用下面的语句
string queuePath = ConfigurationManager.AppSettings["POCPublishSubscribeQueueName"].ToString();
您必须在解决scheme中添加对System.configuration的引用。 还包括“使用System.Configuration” 一旦你这样做,你将有权访问所有的configuration设置。
你必须通过资源pipe理器引用System.Configuration
(不只是using System.Configuration
附加)。 那么你可以写:
string xmlDataDirectory = System.Configuration.ConfigurationManager.AppSettings.Get("xmlDataDirectory");
testingVS2010(感谢www.developpez.net)。 希望这可以帮助。
您可以通过app.config文件的属性将configuration文件模式更改回DotNetConfig.xsd 。 要find所需模式的目的地,您可以按名称search或创buildwinforms应用程序,添加到项目configuration文件,并在其属性中,您将find完整的path文件。
这也适用
WpfApplication1.Properties.Settings.Default["appsetting"].ToString()
我有一个类库WPF项目,我使用:
'Read Settings Dim value as string = My.Settings.my_key value = "new value" 'Write Settings My.Settings.my_key = value My.Settings.Save()