当数据源为列表时,如何使DataGridView在WinForms中可编辑
我可以执行以下操作,但它会将我的DataGridView创建为只读当数据源为列表时,如何使DataGridView在WinForms中可编辑,winforms,entity-framework,datagridview,Winforms,Entity Framework,Datagridview,我可以执行以下操作,但它会将我的DataGridView创建为只读 var entries = (from e in dbContext.Entries where e.FromWord == "test" select new { EntryID = e.EntryID, WordClass = e.WordClass, Plural = e.Plural, FromWord = e.FromWord, LettersOnly = e.Letter
var entries = (from e in dbContext.Entries
where e.FromWord == "test"
select new {
EntryID = e.EntryID,
WordClass = e.WordClass,
Plural = e.Plural,
FromWord = e.FromWord,
LettersOnly = e.LettersOnly,
Notes = e.notes
}
).ToList();
dataGridView1.DataSource = entries;
如何使DataGridView可编辑
如果我删除ToList,我会得到一个错误,说我必须使用数据集作为数据源。是否有一种简单的方法来创建数据集。我首先将实体框架与数据库一起使用。@在上面的评论中,没有人通过此链接帮助我回答我的问题 我创建了这个模型类:
public class RowEntry
{
public int EntryID {get; set;}
public string WordClass {get; set;}
public bool Plural {get; set;}
public string FromWord {get; set;}
public string LettersOnly {get; set;}
public string Notes { get; set; }
}
然后简单地将linq查询更改为-删除匿名类:
List<RowEntry> entries = (from e in dbContext.Entries
where e.FromWord == "test"
select new RowEntry {
EntryID = e.EntryID,
WordClass = e.WordClass,
Plural = e.Plural,
FromWord = e.FromWord,
LettersOnly = e.LettersOnly,
Notes = e.notes
}
).ToList();
dataGridView1.DataSource = entries;
DataGridView现在是可编辑的。我猜匿名列表类型的范围太有限,DataGridView类无法编辑。检查