我已经搜索了将近三天,我无法找到这个问题的答案。由于我对ASP.Net有些新意,我不确定问题是什么。 情况就是这样。我有一个aspx页面,上面有一个Web表单。加载此表单时,它有两个SQL查询,用于执行和填充不同的控件。
我的问题不在于查询,而在于创建动态DIV标记并向其添加控件。如果查询返回一个或没有记录,一切都很好。但如果有2条或更多条记录返回,我最终只会显示最后一条记录。
当我查看页面源(来自浏览器)时,我可以看到最后创建的DIV标记ID,但第一个DIV标记已经消失。这就像第一个DIV标签被覆盖或其他东西。我不知道为什么或导致这种情况的原因。
有人可以帮忙吗?
这是我的代码:
While (incCounter <= rowCount)
DivName.ID = ("rev" & Convert.ToString(incCounter)) 'Create Div name of rev and the current counter number ex. rev1
review_comments.Controls.Add(DivName) 'Add DIV to web form
rName = (rName & Convert.ToString(incCounter)) 'Create name control name
rDate = (rDate & Convert.ToString(incCounter)) 'Create date control name
rComments = (rComments & Convert.ToString(incCounter)) 'Create comment control name
DivName.Controls.Add(New LiteralControl("<br />"))
DivName.Controls.Add(rRevByLabel)
rNameTextBox.ID = rName
DivName.Controls.Add(rNameTextBox)
DivName.Controls.Add(nbSpace)
DivName.Controls.Add(nbSpace)
DivName.Controls.Add(nbSpace)
DivName.Controls.Add(nbSpace)
DivName.Controls.Add(nbSpace)
DivName.Controls.Add(nbSpace)
DivName.Controls.Add(nbSpace)
DivName.Controls.Add(rDateLabel)
DivName.Controls.Add(rDateTextBox)
DivName.Controls.Add(New LiteralControl("<br />"))
DivName.Controls.Add(rCommentLabel)
DivName.Controls.Add(rCommentsTextBox)
'Assign data from query to new textboxes
rNameTextBox.Text = dtR.Rows(incCounter - 1)("reviewed_by_name").ToString()
rDateTextBox.Text = dtR.Rows(incCounter - 1)("reviewed_by_date").Date()
rCommentsTextBox.Text = dtR.Rows(incCounter - 1)("review_comments").ToString()
rName = "revName"
rDate = "rDate"
rComments = "revComments"
incCounter += 1
End While
我知道所有变量都设置正确,因为它显示了我的最后一条记录。
我在做什么蠢事?