ユーザーが変更できるデフォルトのテキストボックスを含む Web ページのページ読み込みに動的に構築されたテーブルがあります。また、ユーザー入力値にもいくつかの検証があります (たとえば、入力は 0 未満にすることはできません)。ユーザーがテーブルを送信すると、有効な入力のみが保存され、ページが更新され、保存された値がプルされ、再構築時にテーブルに入力されます。何らかの理由で、ページを送信して再読み込みした後もテキスト ボックスに無効な入力が表示されますが、永続的ではありません。この問題はラベルでは発生しません。
この問題を引き起こしているテキスト ボックス コントロールに特別に組み込まれているものはありますか? おそらく状態を保存する場所はありますか(ViewState
フラグをfalseに設定してみました)?これはページのライフサイクルの一部にすぎませんか?
テキスト ボックスは、Page_Load イベントから呼び出されるメソッドに組み込まれています。
void Page_Load(object sender, EventArgs e)
{
//page initialization...
ValidateData(); //This is where the current data is verified, and stored if valid
BuildTable(); //This takes that stored value for the text
}
void BuildTable
{
tbTable = new Table();
tbRow = new TableRow();
tbCell = new TableCell();
TextBox tb = new TextBox();
tb.text = some stored value;
tbCell.Controls.Add(tb);
tbRow.Cells.Add(tbCell);
tbTable.Rows.Add(tbRow);
divFromPage.Controls.add(tbTable);
}
この問題を解決するためにさらに情報が必要な場合は、お知らせください。