【发布时间】:2016-01-25 02:46:53
【问题描述】:
我已经从这里的另一位成员那里得到了很大的帮助。然而,我又被困住了。 我有一个 cfg 文件,它与 Ini 文件基本完全相同。我可以很好地将部分加载到 ListBox1,当我选择一个部分时,它会在 ListBox2 中显示键,当我选择一个键时,它会在 TextBox1 中显示该键的值。多亏了这里的一位成员,这一切都完美无缺。 现在,我卡住的地方是,如果我想更改 TextBox1 中显示的值并将其保存到 cfg 文件中。 我已经尝试过 SaveFileDialog 的正常方法。但我不想选择保存新文件。我只想更改现有文件中的值而不显示对话框。希望这是有道理的。
代码如下:
这会加载 ListBox1:
Dim ini As New INI(Environ("USERPROFILE") & "path-to-cfg")
ListBox1.Items.AddRange(ini.GetSectionNames()) 'For all sections
这会从 listbox1 中的选定项目加载 ListBox2:
Dim ini As New INI(Environ("USERPROFILE") & "path-to-cfg")
Dim section As String = ListBox1.SelectedItem
ListBox2.Items.Clear()
For Each item In ini.GetEntryNames(section)
ListBox2.Items.Add(item)
Next
这从 ListBox2 中的选定项目中显示了 TextBox1 中的值:
Dim ini As New INI(Environ("USERPROFILE") & "path-to-cfg")
Dim value As String = ListBox2.SelectedItem
TextBox1.Text = ini.GetEntryValue(ListBox1.SelectedItem, ListBox2.SelectedItem)
非常感谢任何帮助。
干杯, 丹
【问题讨论】:
-
在 cfg 文件加载时记住文件名并仅在文件不存在时显示保存对话框是否不够,否则仅显示覆盖现有文件的确认信息?
-
该文件将永远存在。我要做的只是通过 TextBox1 对键值进行更改,然后单击保存,这将保存对该键值所做的更改。
标签: vb.net visual-studio ini