2012-04-29 7 views
0

私は、テキストファイルを読み込むテキストボックスからテキストを追加するために空のアイテムを作成し続けるリストボックスを持っています。起動時に空のアイテムを削除してもらえますか?listobxの空のアイテムを自動削除しますか?

+0

私の知る限りであれば条件文
String.IsNullOrEmpty(ListBox1.Items(i)) を置き換えることができ、そのための設定がありません。もちろん、それを行うコードを書くことができます。 – RBarryYoung

答えて

0

ファイルを読み取っているときに空の行をフィルタリングするほうがよいでしょう。それができない場合は、しかし:

For i As Integer = 0 To yourListBox.Items.Count - 1 
    If CStr(yourListBox.Items(i)) = String.Empty Then 
     yourListBox.Items.RemoveAt(i) 
     i -= 1 
    End If 
Next 

、追加のコントロールにある場合、あなたは彼らにこのような何か追加していると仮定すると:

For Each line As String In IO.File.ReadAllLines(somefile) 
    yourListBox.Items.Add(line) 
Next 

しています...そして、ここに行く:

For Each line As String In IO.File.ReadAllLines(somefile) 
    If line <> String.Empty Then yourListBox.Items.Add(line) 
Next 
+0

テキストファイルのテキストがテキストボックスに追加され、テキストボックスのテキストがリストボックスに追加されます。テキストが追加され、テキストボックスに新しい行が追加され、テキストボックスの空白行がリストボックスの空白の項目を作成するため、問題が発生していると思います。ありがとうございますが、あなたのコードのどれも助けてくれませんでした。 –

+0

@ ZackSaysVoteRonPaul:コードを表示できますか? – Ryan

+0

コードにエラーがあり、 'Length'を' Count'に置き換えてください。 –

1

あなたは空の項目を削除したい場合はそうForm1_Loadイベントを使用

ロード の起動時にフォームをあなたのリストボックスを形成10
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 

次にこのイベントに

Dim i As Integer = 0 
     Do While (ListBox1.Items.Count) - 1 >= i 
      If String.IsNullOrEmpty(ListBox1.Items(i)) Then 
       ListBox1.Items.Remove(ListBox1.Items(i)) 
       i -= 1 
      End If 
      i += 1 
     Loop 

をこのコードを追加し、あなたが ListBox1.Items(i) = String.Empty

+0

ありがとう、ありがとう。 –

関連する問題