Идентификатор текстового поля элементов не работает должным образом

В моем 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>

до сих пор я могу решить проблему с загрузкой и отображением, но когда у меня возникают проблемы с модификацией. Когда я изменяю / редактирую данные, загруженные в текстовые поля, только когда я нажимаю СОХРАНИТЬ, изменяются только простые текстовые поля, поля визуализированного выходного текстового поля возвращаются к исходной загрузке. Это мой код:

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);
        }

    }

Кто-нибудь видел такое поведение раньше или знает об исправлении? Я ценю ваше время.

0 ответов

Другие вопросы по тегам