将文本框文本保存到XML文件中
我有一个带有1个按钮和4个文本框的ASP.NET WebForm。
每次加载页面时,都会执行以下代码从XML文件读取数据并显示在文本框中:
private void PutWhatWasBefore() { var xml = XDocument.Load(@"C:Settings.xml"); From_display.Text = xml.Element("Settings").Element("Remember").Attribute("fromdisplay").Value.ToString(); From_Smtp.Text = xml.Element("Settings").Element("Remember").Attribute("fromsmtp").Value.ToString(); subject.Text = xml.Element("Settings").Element("Remember").Attribute("subject").Value.ToString(); }
此代码运行良好,它将所有内容放在文本框中。 但是,这是一个很大但是,当我单击按钮时,以下代码写入XML文件不起作用:
string tem = Template1.Text; string from = From_Smtp.Text; string dis = From_display.Text; string sub = subject.Text; var x = new XDocument( new XElement("Settings", new XElement("Remember", new XAttribute("fromsmtp", from), new XAttribute("subject", sub), new XAttribute("fromdisplay", dis), new XAttribute("template", tem) ) ) ); x.Save(@"C:Settings.xml");
无论我如何更改文本框中的数据,每次单击按钮时,数据都会恢复为之前的状态。
我正在考虑它的post,这就是为什么会发生这种情况,但即使我用OnClientClick = return false;
禁用postOnClientClick = return false;
它仍然无法正常工作。
有任何想法吗?
编辑(12:06):
我不认为我已经说过问题出在哪里,我想更多地说明问题。
单击该按钮时,首先执行以下function:
private void SaveNames() { try { string tem = Template1.Text; string from = From_Smtp.Text; string dis = From_display.Text; string sub = subject.Text; var x = new XDocument( new XElement("Settings", new XElement("Remember", new XAttribute("fromsmtp", "He2"), new XAttribute("subject", sub), new XAttribute("fromdisplay", dis), new XAttribute("template", tem) ) ) ); x.Save(@"C:Program Files (x86)ActivePathMailSenderWebSettings.xml"); } catch (Exception ex) { AnswerAndError.Text = ex.Message; } }
这是不起作用的function。 它只是不将新数据保存到XML文件中。
这应该可以解决您的问题:
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { PutWhatWasBefore(); } }
这将确保代码仅在最初访问页面时运行。
上述就是C#学习教程:将文本框文本保存到XML文件中分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/992022.html