音楽ファイルを開き同じファイルが開けないようにしてそれをクリアができません。
Form1
Private Sub FolderE_Click(sender As Object, e As EventArgs) Handles folderE.Click 'クリアする 'Track1 List0000.ListBox1.Items.Clear() 'track2 List0000.ListBox2.Items.Clear() MessageBox.Show("クリアしました") End Sub
Form名:List0000
Imports System.IO Imports System Public Class List0000 Private history1 As New HashSet(Of String)(StringComparer.OrdinalIgnoreCase) Private history2 As New HashSet(Of String)(StringComparer.OrdinalIgnoreCase) Private Sub OpenFileDialog1_FileOk(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles OpenFileDialog1.FileOk Dim files = OpenFileDialog1.FileNames Dim conflict = files.Where(AddressOf history1.Contains) If conflict.Any() Then e.Cancel = True Dim fileNames = conflict.Select(AddressOf System.IO.Path.GetFileName) MessageBox.Show("同じファイルがあります。" & vbCrLf & String.Join(vbCrLf, fileNames), "競合", MessageBoxButtons.OK, MessageBoxIcon.Exclamation) Else Array.ForEach(files, AddressOf history1.Add) End If End Sub Private Sub OpenFileDialog2_FileOk(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles OpenFileDialog2.FileOk Dim files = OpenFileDialog2.FileNames Dim conflict = files.Where(AddressOf history2.Contains) If conflict.Any() Then e.Cancel = True Dim fileNames = conflict.Select(AddressOf System.IO.Path.GetFileName) MessageBox.Show("同じファイルがあります。" & vbCrLf & String.Join(vbCrLf, fileNames), "競合", MessageBoxButtons.OK, MessageBoxIcon.Exclamation) Else Array.ForEach(files, AddressOf history2.Add) End If End Sub
##原因
Form1からダイアログを開き、すべてクリアーしたいんですが
解決できませんでした。
クリアーするコードは
history1.Clear history2.Clear
##解決したい事
Form1でhistory1.Clearとhistory2.Clearをクリアーしたいんですが
List0000.vbの方にあるのでこれをForm1からクリアーするにはどうやったら
出来ますでしょうか?
すいませんが以前に投稿した者ですが、まことに申し訳ございませんが
お願い申し上げます。
環境、Vistual Studio 2017 VBです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/04/15 10:10