赞
踩
1、和Asp.net的Web.config不同,创建winform应用时并不会默认的创建app.config。
2、如果你选定项目-添加新项-应用程序配置文件,不更改默认的App.config名称,那么你得到一个符合要求的最小的App.config文件。注意,若你生成该项目,bin目录下面会出现一个复制了App.config内容的名字为应用程序名.exe.config的配置文件。
3、如果你添加的应用程序配置文件名字不是App.config,那么不会在bin目录下面生成xxx.exe.config文件。
4、如果你设置窗体的某些属性为动态属性,App.config的内容和xxx.exe.config的内容会同步的改变。
在WinForm中,可以通过添加配置文件(如App.config)来为程序简易地设置一些参数,但为了自己指定配置文件的位置,就不用VS添加了,写两个方法读取和修改指定文件。
public class AppSettings
{
public static string AppConfig()
{
return System.IO.Path.Combine(Application.StartupPath, "App.config");//此处配置文件在程序目录下
}
public static string GetValue(string appKey)
{
XmlDocument xDoc = new XmlDocument();
try
{
xDoc.Load(AppSettings.AppConfig());
XmlNode xNode;
XmlElement xElem;
xNode = xDoc.SelectSingleNode("//appSettings");
xElem = (XmlElement)xNode.SelectSingleNode("//add[@key='" + appKey + "']");
if (xElem != null)
return xElem.GetAttribute("value");
else
return "";
}
catch (Exception)
{
return "";
}
}
public static void SetValue(string AppKey, string AppValue)
{
XmlDocument xDoc = new XmlDocument();
xDoc.Load(AppSettings.AppConfig());
XmlNode xNode;
XmlElement xElem1;
XmlElement xElem2;
xNode = xDoc.SelectSingleNode("//appSettings");
xElem1 = (XmlElement)xNode.SelectSingleNode("//add[@key='" + AppKey + "']");
if (xElem1 != null)
{
xElem1.SetAttribute("value", AppValue);
}
else
{
xElem2 = xDoc.CreateElement("add");
xElem2.SetAttribute("key", AppKey);
xElem2.SetAttribute("value", AppValue);
xNode.AppendChild(xElem2);
}
xDoc.Save(AppSettings.AppConfig());
}
}
/// <summary>
///
/// </summary>
/// <returns></returns>
public static XmlNode GetAddressValues()
{
XmlDocument xDoc = new XmlDocument();
xDoc.Load(AppConfig());
XmlNode xNode;
xNode = xDoc.SelectSingleNode("//MainForm-comboBoxWeb");
return xNode;
}
public static void SetAddressValue(string AppValue)
{
XmlDocument xDoc = new XmlDocument();
xDoc.Load(AppConfig());
XmlNode element;
element = xDoc.SelectSingleNode("//MainForm-comboBoxWeb");
XmlNode node = xDoc.CreateNode(XmlNodeType.Element, "Item", "");
node.InnerText = AppValue;
element.AppendChild(node);
xDoc.Save(AppConfig());
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。