2013-12-04 5 views
-1

Я пытаюсь заполнить listbox содержимым файла .csv, разделив два значения на строку и добавив их в структуру.Почему мой список не заполняется?

Public Class Form1 

Structure Members 
    Dim Number As Integer 
    Dim Name As String 
End Structure 

Dim Memberlist(30) As Members 

Public Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
    Dim i As Integer = 0 
    For Each line As String In IO.File.ReadAllLines("MembershipPhone.txt") 
     Dim myData() = line.Split(","c) 
     Memberlist(i).Name = myData(0) 
     Memberlist(i).Number = myData(1) 
     ListBox1.Items.Add(myData(0)) 
     i = i + 1 
    Next 
    ListBox1.SelectedItem = Nothing 
End Sub 
+0

это не C#. – Shaharyar

+0

Извините, случайно ударил предложенный тег. – MrAlex42

+0

Что вы ожидаете от своего имени? 'myData (0)' или 'Memberlist'? –

ответ

0

Я вижу, что вы указали свой вопрос как C#, если я думаю, что он может принадлежать VB.net. Я могу с радостью ответить на ваш вопрос в C# ....

Сначала я бы использовал стандартный CSV-ридер. Я считаю, что это проще, и это может объяснять множество разных форматов. Я использую стандартный OleDbConnection и Реактивный двигатель Microsoft для чтения к базе данных (How to read a CSV file into a .NET Datatable)

После того, как у вас есть DataTable можно привязать его к ListBox

//Load the data from the example above 
DataTable myData = GetDataTableFromCsv(FilePath, true); 

for (int i = 0; i < myData.Rows.Count; i++) 
{ 
    //Grab all my data for this row 
    string PersonID = (string)myData.Rows[i][0]; 
    string FirstName = (string)myData.Rows[i][1]; 
    string LastName = (string)myData.Rows[i][2]; 

    //Add what I want to the listbox 
    ListBox1.Items.Add(FirstName); 
} 

//Select nothing from the listbox 
ListBox1.SelectedIndex = -1; 

Надежда, что было полезно! Удачи в .NET, это очень весело, но я бы рекомендовал использовать C# над VB :-)

+0

спасибо mkamioner. Я беру курс колледжа на VB, поэтому я застрял, используя его. Многое отличается от C++ и python, к которому я привык, поэтому я готов разорвать свои волосы на этом этапе. Тем не менее, вы заставили меня думать, что 2d-массив может быть лучше подходит для структуры здесь. – MrAlex42

Смежные вопросы