我有一个datagridview。我使用linq to entity从数据库中获取数据,并将从linq返回的列表分配给datagridview的datasource属性。
private void ucRecipe_Load(object sender, EventArgs e)
{
var v2 = (from malzeme in bshEntity.Malzemeler select new { malzeme.ID, malzeme.Kod, malzeme.Ad, malzeme.Tip}).ToList();
dgvMaterial.DataSource = v2;
}
我想在分配给dgvMaterial.Datasource的列表上执行一些CRUD操作,然后刷新dgvMaterial。但我无法从其他方法(如按钮点击事件)到达列表(v2)。我如何从其他方法中获得该匿名类型?
答案 0 :(得分:0)
您没有指定您正在使用的C#版本,因此我使用动态为您提供答案。
我正在将匿名类型转换为动态,迭代每行,然后我访问字段值,如属性。这假设您知道匿名类型中的属性名称。
this.dgvMaterial.ItemsSource = v2.ToList();
for (int i = 0; i < dgvMaterial.Items.Count; i++)
{
var row = dgvMaterial.Items[i] as dynamic;
var fieldOne = row.FieldOne;
var fieldTwo = row.FieldTwo;
}
我希望这适合你。