作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个包含 30 个文本框的表单,其中包含我在代码中设置的默认设置。用户可以选择更改它,但我想知道如何在下次运行应用程序时将用户选择的新值保存在一个(或多个)文本框中。非常感谢
最佳答案
如果您不关心编辑保存的文件并且不打算重命名文本框或更改它们的布局,您可以将值的排序留给编译器。用它来保存:
// first collect all values
List<string> allvalues = this.Controls.OfType<TextBox>().Select(x => x.Text).ToList();
// write to file
System.IO.File.WriteAllText("yourPath", String.Join(Environment.NewLine, allvalues));
这用于加载:
//load the values:
string [] alllines = System.IO.File.ReadAllLines("yourPath");
List<TextBox> allTextboxes = this.Controls.OfType<TextBox>().ToList();
for (int i = 0; i < allTextboxes.Count; i++)
{
allTextboxes[i].Text = alllines[i];
}
解释:
this.Controls.OfType<TextBox>()
获取所有控件,这些控件是 Windows 窗体中的文本框。
String.Join(Environment.NewLine, allvalues)
将所有值合并为一个由换行符分隔的字符串。
关于c# - 为下次运行应用程序保存文本框值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43913174/
我是一名优秀的程序员,十分优秀!