我正在寻找一种方法,即知道控件名称,提升它们或调用进程事件/代码。 我在VS2010中使用VB .NET
我有一个aspx页面,其中包含一个面板中的复选框,每个复选框都有自己的触发器。我有代码保存已选中复选框的列表。我有代码将已检查状态恢复到这些复选框,但我需要执行相关代码到复选框checkchanged事件。
' Read db to get saved list of checkboxes '
For each result from db
Dim cb As CheckBox
cb = 'a function that finds and returns the control'
' Now that I have the control,
' how can I find and execute it's checkedchanged code?
控制返回功能正常工作,因为在测试中,我可以处理cb.checked = true,并且cb会被检查,但这不会引发事件/触发代码。
相关的checkedchanged subs的例子:
Protected Sub cb_use_rc3_CheckedChanged(ByVal sender As Object, ByVal e As EventArgs) Handles cb_use_rc3.CheckedChanged
Protected Sub cb_use_casestatus_CheckedChanged(sender As Object, e As EventArgs) Handles cb_use_casestatus.CheckedChanged
有什么想法吗?
答案 0 :(得分:3)
For Each grd_Row As GridViewRow In gvPersonalInventario.Rows
Dim cb As New Web.UI.WebControls.CheckBox
cb = grd_Row.FindControl("CheckBox2")
If cb.Checked = True Then
label1.text = grd_Row.Cells(0).Text
End If
Next
答案 1 :(得分:0)
好的,我正在假设您的复选框每个都有一个单独的ID,并且不是由任何类型的绑定控件生成的。
虽然可以确定哪个处理程序连接到什么对象(或者我理解的对象),但对于这个有限的情况来说,它可能比它的价值更麻烦。
最简单但最丑陋的方法是:
Select Case
语句来确定#1中要调用的方法。