将项目从文本文件导入ComboBox
控件的最简单方法是什么?文本文件包含多行。我需要将文本文件中的每一行添加为组合框中的一个项目。
4 回答
如果文本文件的格式是每行一个组合框项,并且您想将它们加载到 WinFormComboBox
控件中,那么这将是最简单的方法:
ComboBox1.Items.AddRange(File.ReadAllLines(filePath))
您需要添加Imports System.IO
到代码文件的顶部。或者指定File
类的全名:
ComboBox1.Items.AddRange(System.IO.File.ReadAllLines(filePath))
有几种方法可以做到这一点。您可以通过以下两种方式进行错误处理:
1
Try
ComboBox1.Items.Clear()
Dim objReader As New System.IO.StreamReader(File Path)
Do While Not objReader.EndOfStream
ComboBox1.Items.Add(objReader.ReadLine)
Loop
objReader.Close()
Catch ex As Exception
MsgBox(Messege)
End Try
2
Try
ComboBox1.Items.Clear()
ComboBox1.Items.AddRange(File.ReadAllLines(filePath))
Catch ex As Exception
MsgBox(Messege)
End Try
其中任何一个都对您有用。使用错误处理始终是一个好习惯,这样您的程序就不会崩溃,并且可以在无法读取文件的情况下执行其他操作。我确实在开头添加了一个 ComboBox1.Items.Clear() 因为最终会发生的是,如果您将代码放在一个子例程中,它正在刷新并不断读取文本文件,它将继续添加到列表中已经在组合框中并且将具有重复值的东西。例如,假设您在文本文件中有单词 EARTH MARS 在组合框中,您将有单词 EARTH MARS。但是如果你让它不断刷新,让我们说 4 次,组合框现在将显示 EARTH MARS EARTH MARS EARTH MARS EARTH MARS。现在如果你使用我的代码,它将读取 EARTH MARS 并放入组合框 EARTH MARS 并且如果它刷新 4 次或多少次,它仍将显示 EARTH MARS,因为它在返回文本文件并读取其中的内容之前清除组合框中的项目. 现在,如果您将单词 JUPITER 添加到文本文件中,您的组合框现在会将单词 JUPITER 附加到组合框项目列表中,瞧,也不重复值。
ComboBox1.Items.AddRange(System.IO.File.ReadAllLines(local path))
前任:
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
ComboBox1.Items.AddRange(System.IO.File.ReadAllLines("C:\zone\target.txt"))
End Sub
注意,在 form_load 触发器下
谢谢德里克。它对我有用。
ComboBox1.Items.AddRange(System.IO.File.ReadAllLines(local path))