2013-12-16 4 views
1

Я хочу составить список с разными товарами или как его назвать. Я имею в виду, например.другие товары в одном списке

public class form1 
{ 
    public List<string> information = new List<string>(); 
} 

И я хочу, чтобы содержать информацию из текстовых полей с Id, имя и PHONENUMBER как это:

private void btnForm_Click(object sender, EventArgs e) 
{ 
    Form2 Form1= new Form2(); 

    Form1.Show(); 

    class Form2a = new Form2(); 
    a.information.Add(txtId.Text); 
    a.information.Add(txtName.Text); 
    a.information.Add(txtPhonenumber.Text); 
} 

Тогда она будет заполнена с тем, что мы можем назвать различных клиентов, которые имеют разные идентификаторы, имена и буквенные обозначения.

Затем я хочу получить информацию в другой форме.

Может кто-нибудь, пожалуйста, помогите мне или дайте мне советы о том, как?

+0

Вместо '' List использовать '' List где 'Customer' является пользовательский класс с этими свойствами. –

+1

Итак, какая у вас проблема? –

+1

Вы вызываете экземпляр 'Form2',' Form1'. Это действительно, * действительно * означает. – Servy

ответ

5

Вы должны создать собственный класс с именем Customer или аналогичный, и создать List<Customer>. Это позволит вам конвертировать элементы пользовательского интерфейса (текстовые поля) в правильно напечатанные экземпляры Customer и хранить их.

3

Вы должны сгруппировать эту информацию с помощью class, а затем создать и добавить экземпляры этого класса в свой список. Ниже приведен примерный класс и некоторый другой код, который может оказаться полезным. Не стесняйтесь спрашивать, есть ли у вас вопросы.

public class PersonInfo 
{ 
    public string Name; 
    public string Id; 
    public string phoneNumber; 
} 


List<PersonInfo> persons = new List<PersonInfo>(); 
// after reading values 
persons.Add(new PersonInfo(txtName.Text, txtId.Text, txtPhoneNumber.Text)); 

// if you don't have a constructor like that defined; 

personse.Add(new PersonsInfo { 
        Name = txtName.Text; 
        Id = txtId.Text; 
        PhoneNumber = txtPhoneNumber.Text; 
      }); 

// get a user by Id 

PersonInfo p = persons.Where(x => x.Id == "that other Id").FirstOrDefault(); 

if (p != null) 
    // we found our person 
+0

Я думаю, это выглядит великолепно, но у меня есть некоторые проблемы. Я создал новый класс для personinfo, и в этом классе я также разместил список. Но я не могу заставить его работать – user3076791

+0

@ user3076791 ваши определения классов довольно немного отличаются от моих. Следуйте моему коду более внимательно. Вы не хотите, чтобы список 'people' был свойством класса. Вы должны удалить эту опору из класса Class1, а затем объявить «Список » в том же месте, где у вас есть «Список ». – evanmcdonnal

0

Что я здесь делаю неправильно? Это в form1

частной пустота button1_Click (объект отправитель, EventArgs е)

{ 
     Class1 a = new Class1(); 
     a.persons.Add(new persons (txtName.Text, txtId.Text, txtPhonenumber.Text)); 

    } 

это class1 нового класса я создал

{ класса Class1 { общественность строка Имени; public string Id; общественная строка phoneNumber; public List people = new List(); }

}

+0

Я не понимаю, где это происходит. У меня есть копия и вставка кода, который вы только что опубликовали, и все еще получаете ошибки. Работает ли это для вас? – user3076791

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