C# Linq到DataGridView-->;如何启用编辑单元?

C# Linq到DataGridView-->;如何启用编辑单元?,c#,.net,linq,C#,.net,Linq,我在编辑DataGridView中的单元格时遇到问题 当我从LINQ检索数据时,我在ReadOnly中设置为false 公共类Cumst { 公共字符串月份{get;set;} 公共双数量{get;set;} } 我的Linq查询: var juxtaPos=(来自repos.GetTable()中的test21) 其中test21.ID==ID&&test21.Product==“IPHONE” 选择(新Cumst) { 月=测试21。月, 数量=Convert.ToDouble(test

我在编辑DataGridView中的单元格时遇到问题

当我从LINQ检索数据时,我在ReadOnly中设置为false

公共类Cumst
{
公共字符串月份{get;set;}
公共双数量{get;set;}
}
我的Linq查询:

var juxtaPos=(来自repos.GetTable()中的test21)
其中test21.ID==ID&&test21.Product==“IPHONE”
选择(新Cumst)
{ 
月=测试21。月,
数量=Convert.ToDouble(test21.Quantity)
})
).ToList();
dgvJuxtaposition.DataSource=juxtaPos;

当我使用SQL字符串编辑单元接收数据时,已启用。。。我不知道为什么它不适用于Linq使用BindingSource作为数据源,并将带有数据的BindingList分配给BindingSource

在构造函数中,可能在InitializeComponent中:

BindingSource bindingSource = new BindingSource();
DataGridView dgv = new DataGridView();
dgv.DataSource = bindingSource;
数据到达时:

void DisplayCumst(IEnumerable<Cumst> cumst)
{
     BindingList<Cumst> bindingList = new BindingList(cumst.ToList());
     bindingSource.DataSource = bindingList;
}
void DisplayCumst(IEnumerable cumst)
{
BindingList BindingList=新的BindingList(cumst.ToList());
bindingSource.DataSource=bindingList;
}

Hm,建议使用一个类,但您已经在这样做了。。基本思想可能是您需要将更改写回数据源的能力。对于DataTable来说很简单,对于列表没有把握。使用它可以很好地工作:
List data=new List();添加(新元组(“AA”,123));添加(新元组(“ABA”,10023));添加(新元组(“cAA”,1223));添加(新元组(“ddAA”,1423));添加(新元组(“eeeAA”,3123));var juxtaPos=data.Select(x=>new Cumst(){Month=x.Item1,Quantity=x.Item2}).ToList()