【问题标题】:How to open app.config in windows forms?如何在 Windows 窗体中打开 app.config?
【发布时间】:2016-11-15 20:24:32
【问题描述】:

我需要通过单击按钮打开 app.config。我一直在努力寻找如何在没有运气的情况下做到这一点。如何打开文件本身以便进行编辑?

【问题讨论】:

  • 您需要在表单中显示配置内容吗?
  • 以“查看文本”或“阅读设置”的方式打开?
  • @ChrisShao 我需要打开文件本身,以便编辑设置。
  • @EvaldasGrigaitis 糟糕,糟糕糟糕想法!!
  • 可以遍历key/value集合,没问题。但我可以想象,在设置对话框中编辑其中一些值可能会很有帮助/有用。但是,如何正确地做到这一点,以便将更改的值正确放置在它们所属的地方?

标签: c# winforms visual-studio app-config


【解决方案1】:

如果您需要自己打开应用程序配置文件您做错了

如果您需要访问使用 Visual Studio 的设置设计器定义的设置,请使用自动属性,例如

var value = Properties.Settings.Default.SettingName;

如果您想编辑 用户 设置,请执行相同操作并保存:

Properties.Settings.Default.SettingName = Value;
Properties.Settings.Default.Save();

您无论如何都不能修改应用程序设置。如果应用程序安装在Program Files 中,您甚至不能将文件写回,因为Program Files 文件夹对您的应用程序是不可写的。

如果应用程序是使用ClickOnce 安装的,那么你也很不走运,因为用户设置的设置文件的名称完全不同,甚至与应用程序的可执行文件不在同一个位置。

所以这归结为:做对了并且别碰app.config!

【讨论】:

  • 您建议创建第二个表单以便用户可以输入设置然后保存?我认为打开配置文件本身会更容易。
  • 不仅不容易,而且容易出错,很危险,在大多数情况下甚至不可能。是的,我建议使用适当的设置对话框。
  • 请重新阅读我的回答,因为我已经添加了一些内容,说明为什么您最初想做的事情甚至可能无法实现。
  • @EvaldasGrigaitis 要求用户编辑 XML 从未如此简单,请确保正确设置属性类型,因此应用程序需要的任何不可更改的设置和用户可能会更改的任何设置取决于谁在使用它,.net 通过用 user.config 覆盖 app.config 文件在后台自动管理它,所以晚上如果你确实更改了 app.config 它可能不是你正在使用的文件
  • @ThorstenDittmar 那么是否可以打开并安全地编辑 user.config 呢?
猜你喜欢
  • 2019-03-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多