我已经在本站搜索了我需要的东西,但没有一个答案完全符合我的需求。所以这里的交易:用主控页面写的用户控件引发的事件
我动态,像这样的一些按钮一起加载到用户控件的aspx页面:
Dim uc As UserControl
Dim btns As New List(Of LinkButton)
uc = LoadControl("path_to_ascx")
btns.Add(New LinkButton With {.ID = "btnid", .Text = "Sometext"})
uc.GetType().GetProperty("tblButtons").SetValue(uc, btns, Nothing)
holder2.Controls.Add(uc) 'holder2 is an id of a PlaceHolder
的这项工作完全正常。按钮按预期显示在页面上。现在,我遇到了麻烦,如何告诉这些按钮提升用户控件加载到的aspx页面中写入的事件。
Public Sub btnClick(sender As Object, e As EventArgs)
'do stuff
End Sub
为什么我要实现这个目标?因为我有一个非常复杂的UserControl,我希望尽可能重用,但按钮会在每个此UserControl将加载的aspx页面上执行不同的操作。
谢谢
的事情是,你的问题已经在这里https://stackoverflow.com/questions/7713242/asp-net-dynamically-button-with-event-handler回答。你必须做的是谷歌“事件的”asp.net动态按钮“ –
@ T.S。,我不认为提供的链接解决了我的问题。这些按钮在aspx中声明,但它们通过属性发送给usercontrol,并且它们被添加到gridview单元格中。另外,如何根据gridview行值设置一个命令参数。这些按钮必须触发用aspx编写的事件。这甚至有可能吗? – VR46theDoc