在我的aspx中,我的文本框很少。一些是简单的文本框,另一些是渲染输出文本框。文本框被映射到接收的上传的XML数据到站点/数据库,并且还应该允许用户修改文本框中的数据。
<td>
<asp:TextBox ID="TextBox1" runat="server" Text=""></asp:TextBox>
</td>
<td>
<asp:TextBox ID="TextBox2" runat="server" Text=""></asp:TextBox>
</td>
<td>
<asp:TextBox ID="TextBox3" runat="server" Text=""></asp:TextBox>
</td>
到目前为止,我能够解决上传和映射问题,但是当我遇到修改问题时。当我修改/编辑上传到文本框的数据时,当我单击SAVE时,只有简单的文本框被修改,渲染的输出文本框字段将检索回原始上载。这是我的代码背后:
protected void SaveClick(object sender, EventArgs e)
{
....
foreach (var categoryid in _categoryNAME)
{
if (categoryid.CategoryKindId == i)
{
categoryNum = new qtrqsr();
categoryNum .yrqtr = new Currentqsr();
TextBox tb =FindControlRecursive(this.Master, "TextBox" + i) as TextBox;
if (tb != null & tb.Text.Trim().Length != 0)
{
categoryNum.CategoryKindId = i;
int dollarpos = tb.Text.Trim().ToString().IndexOf("$");
if (dollarpos == -1)
{
categoryNum.CategoryKindValue = String.IsNullOrEmpty(tb.Text.Trim().ToString()) ? null : (double?)Convert.ToDouble(tb.Text.Trim().ToString());
}
else
{
categoryNum.CategoryKindValue = String.IsNullOrEmpty(tb.Text.Trim().ToString()) ? null : (double?)Convert.ToDouble(double.Parse(tb.Text.Trim().ToString().Substring(dollarpos + 1)));
}
categoryNum.yrqtr.YrQtrID = QsrYId.ToString();
qsrcodes.Add(categoryNum);
}
}
i++;
}
business = new CurrentqsrBL();
business.updateqsrprocess(currentqsr, qsrcodes);
GetStQsr(QsrYrId);
}
catch (Exception ex)
{
throw new ExceptionManager(ex);
}
}
之前有没有人见过这种行为,或者知道修复?我很感激你的时间。