我有一个预先填充的文本框(txtRefLocation
),当用户在用户控件中进行选择时,我试图隐藏该文本框。每当我设置txtRefLocation.Visible = False
的可见性时,txtRefLocation
都不会被隐藏。
我的用户控件(ucProvider
)发生了一个事件,只要更改了它的选择,就会触发该事件,并且我在服务器上设置了Sub
以处理该事件并评估文本框是否应该显示或隐藏。这是我目前要处理该操作的代码:
Private Sub ProviderSelectionChanged(sender as Object, e As EventArgs) Handles ucProvider.SelectionChanged
Dim showText As Boolean = String.IsNullOrEmpty(ucProvider.SelectedValue) AndAlso Not String.IsNullOrEmpty(txtRefLocation.Text)
txtRefLocation.Visible = showText
End Sub
无论出于何种原因,在上面的示例中都没有隐藏txtRefLocation
。我尝试了调试器的逐步调试,可以看到showText
和txtRefLocation.Visible
都被设置为False
。
奇怪的是,我还尝试了以下操作,确实隐藏了txtRefLocation
:
Private Sub ProviderSelectionChanged(sender as Object, e As EventArgs) Handles ucProvider.SelectionChanged
txtRefLocation.Visible = False
End Sub
所以我的问题是:为什么txtRefLocation.Visible = False
成功隐藏了txtRefLocation
,而txtRefLocation.Visible = showText
(其中showText = False
)却没有?我知道txtRefLocation
的可见性不会在我的代码的其他地方(无论是在代码的后面还是在javascript中)都被修改,所以我不确定发生了什么。
在此先感谢您的帮助!请让我知道是否需要澄清。