记录最后一次打开位置?

money_live 2008-09-22 09:31:42
rt

namespace WindowsFormsApplicationAppconfig {
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
Application.ApplicationExit += new EventHandler(Application_ApplicationExit);
}

/// <summary>
/// 保存最后一次打开文件夹路径
/// </summary>
void Application_ApplicationExit(object sender, EventArgs e) {
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings.Add("fbdSelectedPath", this.folderBrowserDialog1.SelectedPath);
config.Save(ConfigurationSaveMode.Modified);
}

private void btOpen_Click(object sender, EventArgs e) {
this.folderBrowserDialog1.SelectedPath = ConfigurationManager.AppSettings["fbdSelectedPath"];
if (this.folderBrowserDialog1.ShowDialog() == DialogResult.OK) {
// Todo......
}
}
}
}
...全文
63 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wenliangzhu 2008-11-26
  • 打赏
  • 举报
回复
不是这个问题,我也遇到了
还没解决
ailuanxiang 2008-09-22
  • 打赏
  • 举报
回复
在写入记录前, 将fbdSelectedPath的value值先清空.
money_live 2008-09-22
  • 打赏
  • 举报
回复
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<add key="fbdSelectedPath" value="F:\,E:\" />
</appSettings>
</configuration>

app.config(bin/debug下的)
最后代码变成这样
先是打开一次f盘,在打开一次E:
money_live 2008-09-22
  • 打赏
  • 举报
回复

public partial class Form1 : Form {
public Form1() {
InitializeComponent();
Application.ApplicationExit += new EventHandler(Application_ApplicationExit);
}

/// <summary>
/// 保存最后一次打开文件夹路径
/// </summary>
void Application_ApplicationExit(object sender, EventArgs e) {
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings.Add("fbdSelectedPath", this.folderBrowserDialog1.SelectedPath);
config.Save(ConfigurationSaveMode.Modified);
ConfigurationManager.RefreshSection("appSettings");// 后面再添的
}

private void btOpen_Click(object sender, EventArgs e) {
this.folderBrowserDialog1.SelectedPath = ConfigurationManager.AppSettings["fbdSelectedPath"];
if (this.folderBrowserDialog1.ShowDialog() == DialogResult.OK) {
// Todo......
}
}
}


在运行时的状态:发现 有写入,关闭后,就没了
money_live 2008-09-22
  • 打赏
  • 举报
回复
不能保存?

110,538

社区成员

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

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

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