gpt4 book ai didi

c# - 使用 DataView 的 DataBoundItem

转载 作者:行者123 更新时间:2023-11-30 19:49:03 24 4
gpt4 key购买 nike

我有以下问题:我有一个“Person”对象的列表“lst”,我使用 Dataview 对象将它们放在 DataGridView 中(我需要它用于过滤器)

        DataTable dt = Request.ListToDataTable(lst);
dw = new DataView(dt);
dw.Sort = "age ASC";
dataGridView1.DataSource = dw;

当我单击一个按钮时,我需要获取我放置在隐藏列中的 Person 类的一个字段的值,该字段相对于选定的行。为此,我使用:

        Person val = dataGridView1.SelectedRows[0].DataBoundItem as Person;
Debug.WriteLine(val.id);

但是当我运行程序时,结果是崩溃,可能是因为绑定(bind)的项不是Person对象而是DataTable元素。有人能指出我怎样才能得到那个元素吗?如果colum没有被隐藏,那会很容易,但是这样我就不知道如何获得它了!感谢大家

最佳答案

你需要这样的东西:

var row = dataGridView1.SelectedRows[0].DataBoundItem as DataRow;
var val = row[X] as MyType;

第二次尝试:

var drv = dataGridView1.SelectedRows[0].DataBoundItem as DataRowView;
var row = drv.Row as DataRow;
var val = row[X] as MyType;

关于c# - 使用 DataView 的 DataBoundItem,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4545310/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com