【发布时间】:2015-05-04 03:00:44
【问题描述】:
我想知道我需要做什么才能使 DataGridView 按预期运行:
我确实有一个此类对象的List<ioChannel>(名为myList):
public class ioChannel
{
public string Name { get; set; }
public int Id { get; set; }
}
我尝试将 DataGridView 绑定到此列表:
bs = new BindingSource { DataSource = myList };
dgvChannels.DataSource = bs;
现在我创建了一个向 myList 添加元素的按钮:
private void btAddChannel_Click(object sender, EventArgs e)
{
myList.Add(new ioChannel() { Id = myList.Count, Name = "My Channel" });
}
当我按下按钮时,我的列表会填充新的ioChannel,但dgvChannels 不会添加任何行。我需要做什么才能做到这一点?
顺便说一句:当 myList 在将 BindingSource 分配为 DataSource 之前填充了一些 ioChannel 时,网格中会正确显示。
【问题讨论】:
-
我认为您需要使用
BindingList<T>。它有 DGV 可以监听的事件。
标签: c# winforms data-binding datagridview