如何在winforms中将列表的内容显示到DataGridView中
本文关键字:显示 DataGridView 列表 winforms | 更新日期: 2023-09-27 18:03:47
我的问题很简单。我正在为学校的一个项目制作日历。我需要向对象列表添加某些属性,以便将事件保存到日历中。我已经设法向列表中添加了一些东西,但我还没有找到在Winforms中显示列表中所有事件的方法。我的教授建议我使用DataGridView来显示列表的内容。有人能告诉我如何我可以绑定对象在我的列表到一个DataGridView,每当我添加到列表的东西也添加到网格?这将是非常感激的。
到目前为止我写的是:
public static List<Event> events = new List<Event>();
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
public static void addEvent(string eventDate, string eventTitle, string eventInfo)
{
Event Event = new Event();
Event.eventDate = eventDate;
Event.eventDate = eventTitle;
Event.eventInfo = eventInfo;
events.Add(Event);
}
}
class Event
{
public string eventDate { get; set; }
public string eventTitle { get; set; }
public string eventInfo { get; set; }
}
}
将您的DataGridView绑定到BindingList。
代码:public static void addEvent(string eventDate, string eventTitle, string eventInfo)
{
Event Event = new Event();
Event.eventDate = eventDate;
Event.eventDate = eventTitle;
Event.eventInfo = eventInfo;
events.Add(Event);
var bindinglist = new BindingList<Event>(events);
var source = new BindingSource(bindingList, null);
grid.DataSource = source;
}
你不需要做任何特别的事情:
Event event= new Event();
event.eventDate = eventDate;
event.eventDate = eventTitle;
event.eventInfo = eventInfo;
events.Add(event);
DataGridView1.DataSource = events;
但是请确认您的Event类被定义为公共类