2014-12-11 2 views
0

У меня есть страница с тележкой. Верхние линии - это продукты. Затем Промежуточный итог, Доставка, скидка, Всего линий.Почему моя динамически созданная asp: таблица сохраняет информацию о Postback?

Очевидно, что все это динамично.

Я вызываю то же самое LoadTable() Sub в моем событии Page_LoadComplete.

Первый раз вокруг это выглядит отлично. Но если я отредактирую данные и передаю потом, то это сходит с ума: Если я удалю продукт, и результат в том, что моя таблица на 1 строку короче. Последняя строка таблицы, вместо того, чтобы показывать «TOTAL» и общую сумму, отображает то, что было в строке перед обратной передачей (т. Е. Повторяя строку перед ней).

таблица загружается в осины: панель и начало моего Sub начинается с: идентификаторами

pnlCurrentOrder.Controls.Clear() 
Dim tblCurrentOrder As Table = New Table() 
tblCurrentOrder.Rows.Clear() 

Я дал Итоговые строки и ячейки, и когда я смотрю на источник, они имеют правильный ID, но они имеют неправильные данные в ячейках.

Это очень странно для меня, Кто-нибудь знает, что происходит?

Благодаря

+0

Почему бы не использовать datagrid, или ретранслятор, чтобы получить то, что вы хотите. то вы просто установите свойство .datasource, возможно, вызовите .databind, и он отобразит что-нибудь в вашем источнике данных? – Jeremy

+0

короткий ответ, потому что я никогда раньше их не использовал. Но это не отвечает на мой вопрос .. Таблица, которая воссоздана при каждой нагрузке, не должна сохранять данные, не так ли? – Yoni

+0

Это действительно сложно сказать, не глядя на все. Чтобы сделать то, что вы хотите, вам нужно полностью понять жизненный цикл страницы и что происходит на странице ASP.NET при обратной передаче. – Jeremy

ответ

1

Попробуйте EnableViewState = «ложь» на вашем столе, чтобы не помнить предыдущие значения.

Смежные вопросы