【发布时间】:2020-06-02 22:55:17
【问题描述】:
我有一个问题,无论我在消息框中按是还是否,我的代码都会被清除。我相信我可能也可以摆脱我的 if 语句,我不知道为什么我会这样包含它们
Private Sub btnClear_Click(sender As Object, e As EventArgs) Handles btnClear.Click
If MsgBox("Are you sure?", MessageBoxButtons.YesNo, MessageBoxIcon.Question = DialogResult.Yes) Then
If (chkLevel3Support.Checked) Then
chkLevel3Support.Checked = False
End If
If (chkOnSiteTraining.Checked) Then
chkOnSiteTraining.Checked = False
End If
If (chkCloudBackup.Checked) Then
chkCloudBackup.Checked = False
End If
If (rdbYearlyLicense.Checked) Then
rdbYearlyLicense.Checked = False
End If
If (rdbOneTIme.Checked) Then
rdbOneTIme.Checked = False
End If
lbCostofLicenseOutput.Text = " "
lbCostofOptionalOutput.Text = " "
lbTotalCostSale.Text = " "
End If
End Sub
【问题讨论】:
-
您提供的代码没有MessageBox。您的意思是包含注释代码吗?你能修复它,让它代表你的实际代码吗?
-
请使用
Option Strict On让Visual Studio 告诉您问题出在哪里。 -
如果必须以
False结尾,那么检查chkLevel3Support.Checked等是没有意义的。 -
@AndrewMorton 不要忘记 CheckState.Intermediate :)
chkLevel3Support.CheckState = CheckState.IndeterminateIf chkLevel3Support.Checked Then chkLevel3Support.Checked = False -
@djv 大声笑,我想没有人确定这是否会在规范中:)