这是我的config.ini的内容
[第一页参数]
txtZhuNeiJianZhi4=0
txtZhuNeiJiChu4=320
txtZhuNeiDangAn4=600
txtZhuNeiZhiLiang4=1
txtZhuNeiGuaGou4=0.24
txtZhuNeiBingJia4=0
.....在一个form中,我有很多很多个textbox,采用遍历所有textbox的方式,将textbox的名字及其对应的值记入了config.ini。现在在程序启动时,要能够把上次存储的值读出来。
这是遍历所有textbox,并将值写入config.ini的部分代码,反过来要读出来,并赋值给相应的textbox,怎么办?
foreach (Control ct in this.tabControl1.TabPages[0].Controls)
{
if (ct is TextBox)
{
TextBox tb = (TextBox)ct;
//tb.Text = "tb";
file.WriteValue("第一页参数", tb.Name, tb.Text);
} }
foreach (Control ct in this.tabControl1.TabPages[1].Controls)
{
if (ct is TextBox)
{
TextBox tb = (TextBox)ct;
//tb.Text = "tb";
file.WriteValue("第二页参数", tb.Name, tb.Text);
} }
[第一页参数]
txtZhuNeiJianZhi4=0
txtZhuNeiJiChu4=320
txtZhuNeiDangAn4=600
txtZhuNeiZhiLiang4=1
txtZhuNeiGuaGou4=0.24
txtZhuNeiBingJia4=0
.....在一个form中,我有很多很多个textbox,采用遍历所有textbox的方式,将textbox的名字及其对应的值记入了config.ini。现在在程序启动时,要能够把上次存储的值读出来。
这是遍历所有textbox,并将值写入config.ini的部分代码,反过来要读出来,并赋值给相应的textbox,怎么办?
foreach (Control ct in this.tabControl1.TabPages[0].Controls)
{
if (ct is TextBox)
{
TextBox tb = (TextBox)ct;
//tb.Text = "tb";
file.WriteValue("第一页参数", tb.Name, tb.Text);
} }
foreach (Control ct in this.tabControl1.TabPages[1].Controls)
{
if (ct is TextBox)
{
TextBox tb = (TextBox)ct;
//tb.Text = "tb";
file.WriteValue("第二页参数", tb.Name, tb.Text);
} }
你自己定义INI文件,是抱着金子找人借银子WebForm的配置文件是Web.config
WinForm的配置文件是app.config,编译后是可执行文件名.config,如,编译后的文件为test.exe,对应的配置文件为test.exe.config
在项目中添加->配置文件,会自动生成对应的配置文件
如:
string s = ConfigurationManager.AppSettings["textbox1"];
ConfigurationManager是一个获取配置信息的工具类,很方便,要写的时候用Xmldocment类的Save方法
{
//假设以下dict为你从INI读取出来的数据(键值对集合)
Dictionary<string,string> dict=new Dictionary<string,string>();
foreach(KeyValuePair<string,string> kv in dict)
{
//kv.key是控件的名字:Control.Name
//设置对应的控件的Text属性
this.Controls[kv.Key].Text = kv.Value;
}
}