问题描述
我有一个 Visual Basic 项目,我有一个页面(Parent.aspx),里面有一个用户控件(ChildForm.ascx),用户控件有一个复选框列表,如果选择更改,我会导致回发并发送事件
Protected Sub checkBoxList_checked(ByVal sender As Object,ByVal e As EventArgs) Handles checkBoxList.SelectedindexChanged
RaiseEvent MyEvent(sender,e)
End Sub
使按钮在父视图上不可见
Protected Sub ChildForm_MyEvent(ByVal sender As Object,ByVal e As EventArgs) Handles ChildForm.MyEvent
If condition Then
btnSave.Visible = False
Else
btnSave.Visible= True
End If
End Sub
当我调试时,我看到断点命中所有代码行并且条件按预期应用,但按钮没有隐藏,我不知道为什么如果设置正确的值它永远不会刷新父页面以显示更改,即使它确实会导致回发。
请帮忙
解决方法
检查您的页面加载事件(加载、预渲染、预渲染完成)以确保您没有在其中设置可见性属性。如果是,您可能需要使用 “如果不是 IsPostBack”