Заполнение ListView

304
07 января 2018, 04:07

Добрый день, подскажите пожалуйста, каким образом можно заполнить ListView(WinForms) на форме из List? В List содержится три поля, имя, фамилия и id студента.

 public static List<string> Students()
    {
        List<string> listStudents = new List<string>();
            listStudents.Add($"{firstName} {lastName} {id}");
         return listStudents;
    }

Как правильно их подвязать к ListView формы?

Answer 1

Давайте для начала создадим модель предметной области:

public class Student
{
    public int Id { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
}

Сделаем типизированный список:

List<Student> listStudents = new List<Student>();

Соответственно, в этот список будем добавлять экземпляры этого класса, а не строки:

var student = new Student { Id = id, FirstName = firstName, LastName = lastName };
listStudents.Add(student);

Далее. Предлагаю вместо ListView использовать DataGridView. Он позволяет использовать привязку данных (data binding) всего одной строкой:

dataGridView.DataSource = listStudents;

Всё! В гриде будет симпатичный список с колонками всех студентов.

READ ALSO
Открытие консоли и выполнение команд

Открытие консоли и выполнение команд

Как открыть окно терминала и выполнить несколько команд в Ubuntu, используяNET Core?

192
Почему не меняется контент Label(WPF)?

Почему не меняется контент Label(WPF)?

Есть класс Querys с таким кодом -

283
C# Асинхронные сокеты

C# Асинхронные сокеты

Использую этот пример от MSDN: https://msdnmicrosoft

247
C# приведение элементов к типу интерфейса IEnumerable

C# приведение элементов к типу интерфейса IEnumerable

В методичке идёт пояснение по поводу стандартных интерфейсов и ключевого слова yield:

291