Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 访问usercontrol中的控件_Asp.net_Vb.net_User Controls - Fatal编程技术网

Asp.net 访问usercontrol中的控件

Asp.net 访问usercontrol中的控件,asp.net,vb.net,user-controls,Asp.net,Vb.net,User Controls,我在用户控件中有一个DropDownList 我需要访问页面加载中的DropDownList和同一页面上的Repeater ItemDataBound事件 Protected Sub Page_Load(...) Handles Me.Load x = ddl.SelectedValue End Sub Protected Sub repeater_ItemDataBound(...) Handles repeater.ItemDataBound x = ddl.Select

我在用户控件中有一个DropDownList

我需要访问页面加载中的DropDownList和同一页面上的Repeater ItemDataBound事件

Protected Sub Page_Load(...) Handles Me.Load
    x = ddl.SelectedValue 
End Sub

Protected Sub repeater_ItemDataBound(...) Handles repeater.ItemDataBound
    x = ddl.SelectedValue
End Sub
将DropDownList分配给变量,例如

Dim ddl As Dropdownlist = Ctype(UserControl.FindControl("ddl"), Dropdownlist)

在Page_Load事件中执行此操作时,不会从中继器内部看到。那么,我是在两个事件中都声明变量,还是有更好的方法让所有事件都访问它?

您需要在两个事件中都分配dropdownlist。建议:我将向用户控件添加一个内部或公共方法,以返回dropdownlist的选定值。因此,您不需要使用findcontrol,只需调用此方法即可。