Как связать DataGridView со списком <T>или BindingList <T> - PullRequest
0 голосов
/ 25 мая 2009

Я делал это тысячу раз, и это работает, но сейчас .... нет: (

Я что-то не так делаю, потому что в сетке ничего не отображается?

namespace theGridIsNotWorking
{
using System;
using System.Collections.Generic;
using System.Windows.Forms;

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        var items = new List<Item>();

        items.Add(new Item(){ TheName = "first"});
        items.Add(new Item(){ TheName = "Second"});
        items.Add(new Item(){ TheName = "Third"});

        dataGridView1.DataSource = new List<Item>(items);
    }

    public class Item
    {
        public string TheName;
    }
}
}

Ничего зрелищного .... но очень грустного.

Ответы [ 3 ]

3 голосов
/ 09 июня 2009

Я думаю, проблема в том, что TheName является переменной-членом, но вам нужно свойство. Попробуйте следующее для класса Item:


      public class Item
      {
         public string TheName;

         public string TheNameProperty
         {
            get
            {
               return TheName;
            }
         }

         public Item(string name)
         {
            TheName = name;
         }
      }

2 голосов
/ 25 мая 2009

Попробуйте BindingListView . Самый простой способ связать Список с DGV.

1 голос
/ 25 мая 2009
BindingList<Notification>(notifications);

не должно быть

BindingList<Notification>(activeNotifications);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...