我有点困惑的是,为什么asp.net在使用RenderControl方法时不会将autopostback属性设置为true的下拉列表呈现。
例如
Dim sw As New IO.StringWriter
Dim tw As New HtmlTextWriter(sw)
Dim table As New Table
table.Rows.Add(New TableRow)
Dim tr As TableRow = table.Rows(0)
tr.Cells.Add(New TableCell)
Dim tc As TableCell = tr.Cells(0)
Dim ddlMyValues As New DropDownList
ddlMyValues.ID = "ddl1"
ddlMyValues.Items.Add("Test1")
ddlMyValues.Items.Add("Test2")
ddlMyValues.Items.Add("Test3")
ddlMyValues.AutoPostBack = True
tc.Controls.Add(ddlMyValues)
table.RenderControl(tw)
Debug.WriteLine(sw.ToString)
我的输出呈现下拉列表而没有onchange =“javascript:setTimeout('__ doPostBack(\ ddl1 \',\'\')',0)” 这是由asp.net在正常使用下拉列表时生成的。
有解决方法吗?
答案 0 :(得分:0)
只是一个猜测,但可能是因为它不在form
元素内。你为什么要这样做呢?