我有一个人在表单中输入他们的地址。然后我在表格上有第二个部分,可能会或可能不会使用他们输入的相同地址。我想要一个复选框,如果选中,将填写他们已经键入的地址。然而,我不能让它工作。我正在使用VB.Net。我试过.Text
和.ToString()
,但无论哪种方式都不起作用。
Protected Sub CheckBox_CheckedChanged(sender As Object, e As System.EventArgs) Handles CheckBox.CheckedChanged
If CheckBox.Checked Then
TextBoxAddressLine1Work.Text = TextBoxAddressLine1Local.Text
End If
End Sub
CheckedChanged事件有两个条件
- 此事件不会将页面发送回服务器,除非AutoPostBack属性设置为true。 CheckBox控件必须在发送到服务器的邮件之间保留一些值,才能使此事件正常工作。请确保为该控件启用了viewstate。
很可能您没有将AutoPostBack属性设置为true,如果没有,则按照以下示例
设置它<asp:CheckBox ID="CheckBox1" runat="server" AutoPostBack="true" />
额外的建议:不要使用关键字作为你的标识符,如变量名,控件ID,例如你已经分配了"CheckBox"作为ID给一个CheckBox控件在你的例子。这样的命名约定可能会导致难以跟踪的异常。