我制作了一个微小的内部数据库,用于存储组合框的内容(它应该是从程序中管理的,这就是我选择这样做的原因)我想要两个小方面应该管理这个小数据库内容的程序;一个从.dat文件添加内容(一行),第二个到删除内容(一行)。
第一个很简单:
Dim nyUtvidelse As String
nyUtvidelse = TextBox1.Text
My.Computer.FileSystem.WriteAllText("C:\database.dat", vbCrLf + nyUtvidelse, True)
问题在于删除功能: 这是在MyBase.load上:
cmboxType.Items.Clear()
cmboxType.Items.AddRange(IO.File.ReadAllLines("C:\database.dat"))
从这个ComboBox我希望能够通过单击按钮选择数据库中的一行进行删除。我不太清楚该怎么做;根据cmboxType中的选择改变C:\database.dat
。
答案 0 :(得分:2)
将所有行读入数组,然后使用数组填充组合框。单击“删除”时,抓取组合框选择的索引,并在将数组写回文件时忽略该数组元素。
Dim lines As String()
Private Sub load_combo()
lines = System.IO.File.ReadAllLines("C:\database.dat")
cmboxType.Items.Clear()
cmboxType.Items.AddRange(lines)
End Sub
Private Sub delete_item()
Dim sw As New System.IO.StreamWriter("C:\database.dat")
For i As Integer = 0 To lines.Length - 1
If i <> cmboxType.SelectedIndex Then
sw.WriteLine(lines(i))
End If
Next
sw.Close()
End Sub