我正在构建一个动态构建UpdatePanels,Panels,DDL和Buttons的页面。每个UpdatePanel都有一个按钮。我正在通过在单击按钮后尝试更改值来进行一些测试。当我按下按钮后单击页面加载然后调用按钮单击功能。然而,它并没有改变我创建的标签的价值。
Private Function BuildSaveButton() As Button
Dim bt As New Button
bt.CssClass = "saveButton"
bt.Text = "Save"
AddHandler bt.Click, AddressOf StateSaved
Return bt
End Function
Private Sub StateSaved(ByVal sender As Object, ByVal e As EventArgs)
nameSelected.Text = "Worked!"
End Sub
理想情况下,我的目标是(因为我有嵌套的UpdatePanels),页面只能更新特定UpdatePanel中的内容而不是整个页面。
答案 0 :(得分:0)
我确定您必须在添加处理程序之前为控件分配所有者。
由于您已将按钮添加到特定面板,因此只需将面板作为参数传递。
我假设updatepanel是您创建的一个类,它继承了一些使用controls属性的类。
Private Sub SubAddButtonToPanel(f as UpdatePanel) As Button
Dim bt As New Button
bt.CssClass = "saveButton"
bt.Text = "Save"
f.Controlls.Add(bt)
AddHandler bt.Click, AddressOf Me.StateSaved
Return bt
End Sub
Private Sub StateSaved(ByVal sender As Object, ByVal e As EventArgs)
nameSelected.Text = "Worked!"
End Sub
我还添加了#34;我。"在调用StateSaved()之前作为预防措施。