次のコードがあります。
Imports System.Web.Security
Public Class Form1
Dim symbols As Integer = 0
Private Sub cbSymbols_CheckedChanged(sender As Object, e As EventArgs) Handles cbSymbols.CheckedChanged
If cbSymbols.CheckState = 1 Then
symbols = 1
ElseIf cbSymbols.CheckState = 0 Then
symbols = 0
End If
End Sub
Private Sub btnGenerate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGenerate.Click
Dim password As String = Membership.GeneratePassword(ComboBox1.SelectedIndex + 6, symbols)
Label1.Text = password
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Label1.Font = New Font("Arial", 14)
If ComboBox1.Items.Count > 0 Then
ComboBox1.SelectedIndex = 0 ' The first item has index 0 '
End If
End Sub
End Class
ただし、チェックボックス (cbSymbols) がオンになっているかどうかに関係なく、パスワードには、チェックされている間は 1 つの記号があり、チェックされていない場合は 2 つの記号があります。この問題の診断やコードの改善を手伝ってくれる人はいますか? ありがとう。