C# 在切换单选按钮C时加载和保存文本框值#
我正在Visual Studio 2017上使用c#构建一个应用程序。我的界面由几个文本框和两个单选按钮组成。每次关闭应用程序时,我都会将文本框的值保存到两个单独的文本文件中。因此,我有两个文本文件(每个单选按钮)。每次选中单选按钮时,我都会从相应的txt文件中加载文本框值。这就是它现在的实施方式:C# 在切换单选按钮C时加载和保存文本框值#,c#,asp.net,visual-studio,textbox,radio-button,C#,Asp.net,Visual Studio,Textbox,Radio Button,我正在Visual Studio 2017上使用c#构建一个应用程序。我的界面由几个文本框和两个单选按钮组成。每次关闭应用程序时,我都会将文本框的值保存到两个单独的文本文件中。因此,我有两个文本文件(每个单选按钮)。每次选中单选按钮时,我都会从相应的txt文件中加载文本框值。这就是它现在的实施方式: private void radioButton1_CheckedChanged(object sender, EventArgs e) { TextBox[] boxes
private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
TextBox[] boxes = { textBoxAscStart, textBoxAscStep };
loadConfigFile(boxes);
}
private void radioButton2_CheckedChanged(object sender, EventArgs e)
{
TextBox[] boxes = { textBoxAscStart, textBoxAscStep };
loadConfigFile(boxes);
}
private void loadConfigFile(TextBox[] boxes) {
try
{
string dir = Directory.GetCurrentDirectory();
string fullName;
if (radioButton1.Checked == true)
{
fullName = dir + "\\Config1.txt";
}
else
{
fullName = dir + "\\Config2.txt";
}
char[] delimiter = new char[] { '\t' };
using (System.IO.StreamReader file = new System.IO.StreamReader(@fullName))
{
for (int i = 0; i < boxes.Length; i++)
{
string[] line = file.ReadLine().Split(delimiter);
boxes[i].Text = line[1];
}
}
}
catch (IOException ex)
{
MessageBox.Show(ex.Message);
}
}
private void radioButton1\u CheckedChanged(对象发送方,事件参数e)
{
TextBox[]box={textBoxAscStart,textboxascsstep};
加载配置文件(框);
}
私有void radioButton2\u CheckedChanged(对象发送方,事件参数e)
{
TextBox[]box={textBoxAscStart,textboxascsstep};
加载配置文件(框);
}
私有void loadConfigFile(文本框[]框){
尝试
{
string dir=Directory.GetCurrentDirectory();
字符串全名;
如果(radioButton1.Checked==true)
{
全名=dir+“\\Config1.txt”;
}
其他的
{
全名=dir+“\\Config2.txt”;
}
字符[]分隔符=新字符[]{'\t'};
使用(System.IO.StreamReader file=new System.IO.StreamReader(@fullName))
{
对于(int i=0;i
我知道我是以一种虚假的方式实现的,所以很抱歉我的代码太差了。这种方法可以很好地工作,直到您主要使用其中一个选中的单选按钮,然后退出应用程序,以便将值写入文件。但是,当用户在一个单选按钮上工作,然后切换到另一个单选按钮(使用另一个值),在那里工作一点,然后返回时,我如何实现这种情况呢?在我的例子中,他仍然可以从文本文件中看到这些旧值。我希望每次用户返回到前一个单选按钮时,文本框中的值都是他输入的最新值。我希望我说得够清楚了。谢谢您的帮助。如果我没有弄错的话,您的问题是希望用户在单选按钮之间切换时在文本框中输入新文本。如果是: 我认为您应该修改两个单选按钮的
CheckedChanged
事件,并添加一个函数
从文本框中获取实际文本,并将其与数据进行比较
您已经保存在文本文件中。如果不同,则保存
它可以编辑并使用新文本来显示单选按钮,因为您得到了新文本。如果相同,只需使用loadConfigFile(框)代码>希望逻辑能帮助您:)
在后台缓存它们。