textbox 绑定到 app.config的问题

WM_JAWIN 2008-11-26 08:53:21
如何让程序在退出时保存textbox.text到app.config中,textbox.text已经绑定到app.config?
...全文
98 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
meblessgod 2008-11-26
  • 打赏
  • 举报
回复

正在研究
OKILOVE 2008-11-26
  • 打赏
  • 举报
回复
修改config文件的类,你可以增加节点,用节点的value来保存内容

using System;
using System.Configuration;
namespace Heaven.Pub
{
/// <summary>
/// 配置文件的类型
/// </summary>
public enum ConfigType
{
/// <summary>
/// 网站的配置文件
/// </summary>
WebConfig=0,
/// <summary>
/// 应用程序的配置文件
/// </summary>
AppConfig=1
}

public class ConfigurationOperator
{
private Configuration config;
private ConfigType configType;
private string configPath;

/// <summary>
/// 配置文件
/// </summary>
public Configuration Config
{
set
{
config = value;
}
get
{
return config;
}
}

/// <summary>
///
/// </summary>
/// <param name="configType">配置文件类型</param>
public ConfigurationOperator(ConfigType configType)
{
this.configType = configType;
if (configType == ConfigType.WebConfig)
{
configPath = System.Web .HttpContext.Current.Request.ApplicationPath;
}
else
{
configPath = System.Windows .Forms .Application.ExecutablePath;
}
Initialize();
}

/// <summary>
///
/// </summary>
/// <param name="configPath">配置文件路径</param>
/// <param name="configType">配置文件类型</param>
public ConfigurationOperator(string configPath, ConfigType configType)
{
this.configPath = configPath;
this.configType = configType;
Initialize();
}

private void Initialize()
{
if (configType == ConfigType.AppConfig )
{
config = System.Configuration .ConfigurationManager.OpenExeConfiguration(configPath);
}
else
{
config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(configPath);
}
}

/// <summary>
/// 增加appSetting
/// </summary>
/// <param name="key">appSetting的关键字</param>
/// <param name="value">appSetting的值</param>
public void AddAppSetting(string key, string value)
{
AppSettingsSection appSetting = (AppSettingsSection)config.GetSection("appSettings");
if (appSetting.Settings[key] == null)
{
appSetting.Settings.Add(key, value);
}
else
{
ModifySetting(key, value);
}
}

/// <summary>
/// 修改appSetting
/// </summary>
/// <param name="key">appSetting的关键字</param>
/// <param name="newValue">appSetting的新值</param>
public void ModifySetting(string key, string newValue)
{
AppSettingsSection appSetting = (AppSettingsSection)config.GetSection("appSettings");
if (appSetting.Settings[key] != null)
{
appSetting.Settings[key].Value = newValue;
}
else
{
AddAppSetting(key, newValue);
}
}

/// <summary>
/// 增加连接字符串
/// </summary>
/// <param name="key">增加的关键字</param>
/// <param name="connectString">增加的连接字符串</param>
public void AddConnectString(string key, string connectString)
{
ConnectionStringsSection connectionString = (ConnectionStringsSection)config.GetSection("connectionStrings");
if (connectionString.ConnectionStrings[key] == null)
{
ConnectionStringSettings connectionSetting=new ConnectionStringSettings (key,connectString );
connectionString.ConnectionStrings.Add(connectionSetting);
}
else
{
ModifySetting(key, connectString);
}
}

/// <summary>
/// 修改连接字符串
/// </summary>
/// <param name="key">需要修改的关键字</param>
/// <param name="newConnectString">新的连接字符串</param>
public void ModifyConnectString(string key, string newConnectString)
{
ConnectionStringsSection connectionString = (ConnectionStringsSection)config.GetSection("connectionStrings");
if (connectionString.ConnectionStrings[key] != null)
{
connectionString.ConnectionStrings[key].ConnectionString = newConnectString;
}
else
{
AddConnectString(key, newConnectString);
}
}

/// <summary>
/// 保存配置信息
/// </summary>
public void SaveConfig()
{
config.Save();
}
}
}
amingo 2008-11-26
  • 打赏
  • 举报
回复
帮LZ顶
WM_JAWIN 2008-11-26
  • 打赏
  • 举报
回复
没这么复杂吧?我记得改变一下设置就可以的.

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧