【发布时间】:2017-04-16 18:56:52
【问题描述】:
如何访问下面的标签 {"lblStaticText_" + i.ToString()},该标签存储在 UpdatePanel 中,然后在 Panel 中,当按下按钮“btncomment_...”时,会触发 UpdatePanel , 添加评论?
(评论存储成功 - 只是无法在页面上更新标签。:-|
.aspx:
<tr>
<td style="text-align: center;">
<table style="width: 100%;" border="0">
<tr>
<td style="width: 49%;"></td>
<td style="width: 2%;">
<asp:Panel runat="server" ID="divMain" />
</td>
<td style="width: 49%;"></td>
</tr>
</table>
</td>
</tr>
.aspx.cs
这是一个位于 UpdatePanel 内的表:
var up = new UpdatePanel();
up.ID = "UpdatePanel_" + i.ToString();
up.UpdateMode = UpdatePanelUpdateMode.Conditional;
var lbl0 = new Label();
lbl0.ID = "lblStaticText_" + i.ToString();
lbl0.Text = "test";
var lbl1 = new Label();
lbl1.Text = "Add a comment!: ";
var tb = new TextBox();
tb.ID = "comment_" + i.ToString();
tb.Attributes["placeholder"] = "Stuff";
tb.TextMode = TextBoxMode.MultiLine;
tb.Rows = 3;
tb.Columns = 35;
var btn = new Button();
btn.ID = "btncomment_" + strpicture_name.Replace(".", "~") + "_" + i.ToString();
btn.Text = "Submit";
btn.Click += btn_All;
var Table2 = new Table();
Table2.ID = "ctbl_" + i.ToString();
//Table2.Style.Add("width", "300px");
Table2.Style.Add("width", "100%");
Table2.BorderStyle = BorderStyle.Solid;
Table2.BorderColor = System.Drawing.Color.Black;
Table2.BorderWidth = 1;
Table2.CellPadding = 0;
Table2.CellSpacing = 3;
//first row
TableRow tRowc = new TableRow();
Table2.Rows.Add(tRowc);
TableCell tCellc = new TableCell();
tCellc.Style.Add("vertical-align", "top");
tCellc.Style.Add("padding", "10px");
tCellc.Controls.Add(lbl0);
tRowc.Cells.Add(tCellc);
//second row
tRowc = new TableRow();
Table2.Rows.Add(tRowc);
tCellc = new TableCell();
tCellc.Style.Add("border", "1px solid black");
tCellc.Style.Add("vertical-align", "top");
tCellc.Style.Add("padding", "10px");
tCellc.Style.Add("width", "300px");
tCellc.Controls.Add(lbl1);
tRowc.Cells.Add(tCellc);
TableCell tCellc1 = new TableCell();
tCellc1.Style.Add("border", "1px solid black");
tCellc1.Style.Add("vertical-align", "top");
tCellc1.Style.Add("padding", "10px");
tCellc1.Style.Add("width", "300px");
tCellc1.Controls.Add(tb);
tRowc.Cells.Add(tCellc1);
TableCell tCellc2 = new TableCell();
tCellc2.Style.Add("border", "1px solid black");
tCellc2.Style.Add("vertical-align", "top");
tCellc2.Style.Add("padding", "10px");
tCellc2.Style.Add("width", "300px");
tCellc2.Controls.Add(btn);
tRowc.Cells.Add(tCellc2);
up.ContentTemplateContainer.Controls.Add(Table2);
tCell.Controls.Add(up);
tRow.Cells.Add(tCell);
i++; --repeat--
【问题讨论】:
标签: c# asp.net label updatepanel