【问题标题】:Visual Studio My.SettingsVisual Studio 我的设置
【发布时间】:2015-07-10 20:16:26
【问题描述】:

我在 Visual Studio 中的 MySettings 遇到了一些问题。

我通过 GUI(属性菜单)设置了一些设置。给他们名字和价值。一切都已保存。

假设我有一个设置:SettingA,Value=123(用户设置)

我在 Formload 的文本框中显示 SettingA,但没有任何反应。 我在 Formload 的消息框中显示 SettingA,没有任何反应。

表单加载后,如果我编写一个按钮以在文本框中显示设置......它确实如此。

如果我在代码中更改设置的值并保存它。然后让它显示在文本框中,它将显示正确的值。

如果我关闭应用程序并重新启动它,它要么什么都不显示……要么显示一个旧值。

如果我自己通过项目的“属性”菜单更改设置的值,然后尝试让新值显示在 Formload 上,或者通过按钮单击.....要么什么都不会发生,要么它仍然会发生显示旧值。

似乎在程序运行时,我可以更改代码中的值并让它们正确显示..只要我想。关闭程序后,我没有看到代码中所做的任何更改反映在“属性”菜单中。

这对我来说毫无意义。如果我自己更改了一个值,为什么它不显示/为什么仍然显示旧值?

如果我在代码中更改值,将它们保存在代码中,然后显示它们..为什么它们不显示在“属性”菜单中?

这就像更改没有完全提交......或者它们正在从多个位置读取。

同样,这些是用户设置。

我一直在使用的唯一代码是:

txtPort.Text = My.Settings.Port

My.Settings.Port = txtPort.text

My.Settings.Save()

不一定按那个顺序..只是显示我正在使用的东西。

【问题讨论】:

  • My.Settings.Port = txtPort.text 不会将值保存回 Project -> Settings`= 它会将它们保存到文件并在下次应用程序运行时加载它们。您输入的值是初始/默认值
  • 要同步调试应用程序使用的设置文件和 Visual Studio 设置文件,请按 Project->Settings 菜单左上角的 Synchronize 按钮。

标签: vb.net my.settings


【解决方案1】:

您似乎在调试期间更改了设置值,然后期望看到这些更改反映在开发环境中。

问题是,您在调试期间保存设置的文件是您在 Visual Studio 中使用的文件的副本。它不会影响 Visual Studio 项目中的值。仅当您没有在解决方案中进行任何需要重建的更改时,您保存的设置才会在下次调试时仍然存在。

如果您希望通过属性窗口输入的值显示在调试中,那么您必须在调试之前重新构建应用程序。

当您构建应用程序以对其进行调试时,您并没有在 VS 之外运行程序。 VS 创建一个 exe 来运行并运行它,同时保留对其资源的访问权限,以便为您提供有关应用程序活动的反馈。

正如 nilllzz 7 所述,您可以通过单击同步将 VS 项目设置同步到调试文件中的设置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-06
    • 2020-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多