0

我有一个 DropDownList() 在我的代码隐藏中呈现并由 myView 填充

 Dim ddl As New DropDownList()
 ddl.ID = "ddlV_" & dtrw("col_id") & "_" & fixDisplayName(dtrw("display_name"))
 ddl.DataSource = myView
 ddl.DataTextField = "DDLTEXT"
 ddl.DataValueField = "DDLVALUE"
 ddl.AutoPostBack="true"

 ddl.DataBind()

我想将OnSelectedIndexChanged ="do_this_when_changed"属性添加到上面的下拉列表中。

我知道 Web 服务器控件也是在服务器上创建的,它们需要 runat="server" 属性才能工作。

这个列表控件可以这样做吗?

4

2 回答 2

4

您可以使用以下方式以编程方式添加事件处理程序AddHandler

Dim ddl As New DropDownList()
' ... ' 
AddHandler ddl.SelectedIndexChanged, AddressOf do_this_when_changed  

在这堂课中:

Private Sub do_this_when_changed(sender As Object, e As EventArgs)
    Dim ddl = DirectCast(sender, DropDownList) ' here it is'
End Sub
于 2013-04-10T13:41:29.080 回答
0

您可以使用此事件来做到这一点...

ddl.SelectedIndexChanged
于 2013-04-10T13:41:36.033 回答