私はchecklistbox1を持っています。これは、folderbrowserdialogを持つ検索機能で満たされています。ひとつの項目(= XMLファイル)をチェックすると、それは別のクラスを呼び出すことによって特定のノードに従ってリストボックスを塗りつぶします。これは正常に動作します。Checkedlistbox:アイテムのチェックを外し、新しい選択時にアクションを再実行します。
私がチェックリストボックス1内の別のアイテムを選択すると、以前にチェックされたアイテムのチェックが外され、新たに選択されたアイテムのノードを表示する別のクラスが再度実行されます。
私のコードは、私が作った他の検索による試行のぼかしです。私がそれをしたいことを書き留めておいてください。これは、私が別の項目を選択したときにエラーを投げたくないので、私のコードを今持っているようなものではありません。前のバージョンの選択を解除して、新しく選択したアイテムに対して再度アクションを実行するだけです。
誰かが私を助けてくれることを願っています。
コード:
Try
Dim checkLstBox As CheckedListBox = CType(sender, CheckedListBox)
Dim targetNum As Integer = 1
If e.NewValue = CheckState.Checked AndAlso checkLstBox.CheckedItems.Count + 1 > targetNum Then
Call ClsMessageBoxes.CheckedListbox1_maxcheck_Form2()
e.NewValue = CheckState.Unchecked
For i As Integer = 0 To f5.CheckedListBox1.Items.Count - 1
f5.CheckedListBox1.SetItemChecked(i, False)
Next 'This part at least throws an error if I select a new item in checkedlistbox1 and de-selects the previous item'
Else
'this part does not work'
f5.ListBoxDestPlate.Items.Clear()
f5.CheckedListlistbox2.SelectedItems.Clear()
'this part is meant to select an item in another checkbox according to certain tekst in the filename'
Dim i As Integer
If ClsSharedProperties2.filePath2.Contains("Text1") Then
i = 1
f5.Checkedlistbox2.SetItemChecked(i, True)
Call ClsScan.scanning2()
ElseIf ClsSharedProperties2.filePath2.Contains("Text2") Then
i = 2
f5.Checkedlistbox2.SetItemChecked(i, True)
Call ClsScan.scanning2()
End If
End If
Catch ex As Exception
MessageBox.Show(ex.Message & vbCrLf & "Stack Trace: " & vbCrLf & ex.StackTrace)
End Try
「私は有用なコードはありません」とあなたは確信しています。あなたの最も近い努力を投稿してください。これは、答えたい人には、その問題について大いに理解してもらうのに役立ちます。 [お問い合わせ]を読んで[ツアー] – Plutonix
Plutonixありがとうございます。私は現時点でコードを追加しました。 – Woudi