У меня есть простая HTML-таблица, подобная этой:
<table id="table" runat="server">
<tr>
<td>
<asp:Label runat="server" Text="Column1" />
</td>
</tr>
<tr id="tr_someId" runat="server">
<td>
<asp:Label ID="lb_someId" runat="server" />
</td>
</tr>
</table>
При каждом запросе я добавляю динамические строки между (rowIdx = 1
) существующих строк, например:
protected override void OnLoad( EventArgs e )
{
base.OnLoad( e );
if( !IsPostBack )
{
lb_someId.Text = "Some text";
}
int rowIdx = 1;
foreach( ISomething something in GetSomethings() )
{
HtmlTableRow tr = new HtmlTableRow();
tr.Cells.Add( CreateLabelCell( something ) );
table.Rows.Insert( rowIdx++, tr );
}
}
Теперь, мне интересно, почему мой lb_someId-Label
теряет свой текст на PostBack?Я думаю, что это не должно произойти, потому что это фиксированный контроль.Он не теряет свой текст, когда я комментирую строку table.Rows.Insert( rowIdx++, tr );
.
Заранее спасибо!