如果存在,请调用动态控制事件

时间:2014-11-28 15:52:32

标签: asp.net vb.net

情景:

我有一些JSON数据,我用它来将存储数据加载到我的表单上的字段中。其中一个字段是DropDownList。 DropDownList恰好位于子ASCX控件的子节点中,我正在从父ASPX页面访问它。当此DropDownList具有SelectedIndexChanged时,它会在表单上显示其他字段。

我正在使用我的一个函数来找到这个成功运行的控件,但是在设置DropDownList控件的SelectedValue时,SelectedIndexChanged事件没有触发。这意味着某些字段未加载,导致某些JSON数据未加载和丢失。

我已经看到了一个简单地调用ddl_SelectedIndexChange(sender,args)函数的建议,但是我正在调用的页面根据当前请求动态加载数百个子控件,所以想知道是否有一种方法可以调用SelectedIndexChanged控件的事件(如果存在),而不必搜索并手动调用ddl_SelectedIndexChanged()函数。有可能吗?

DirectCast(WebUtils.ControlFinder(upMain, f.fieldClientID), DropDownList).SelectedValue = f.fieldData.ToUpper()

我希望这是有道理的。对不起,如果我还不够清楚。

1 个答案:

答案 0 :(得分:0)

我最终使用Reflection调用我需要的属性事件,进行了一次治疗。