访问DataGrid中的单元数据

本文关键字:单元 元数据 DataGrid 访问 | 更新日期: 2023-09-27 17:50:28

似乎是一件非常简单的事情,但所有的研究和我所尝试的一切似乎都不起作用。我正在使用VS2013和。net 4.5

我有一个不使用数据绑定的2列WPF DataGrid。网格中已经填充了来自SQLCE表的数据,我想选择一行,并将所选行的第0列单元格中的数据作为字符串返回。

我可以看到数据在调试监视窗口

我只是不知道如何访问这个值,以便我可以使用它。

    private void dgPickList_MouseDoubleClick( object sender, MouseButtonEventArgs e )
    {
        selectItem();
        this.Close();
    }
    private void selectItem()
    {
        _pickedItem = dgPickList.SelectedItem.ToString();
    }

这段代码显然不能很好地工作,但它确实让我看到非公共成员_values字段中的单元格数据。

我非常感谢你的帮助。

杰夫

访问DataGrid中的单元数据

SelectedItem转换回您填充网格的原始类型。

例如,如果您使用DataTable,则转换为DataRow并获取第一列(这里我假设它是代表唯一ID的整数类型):

var id = ((DataRow)dgPickList.SelectedItem).Field<int>(0);

如果你使用的是自定义类的集合,像这样的东西应该可以工作:

var id = ((MyClass)dgPickList.SelectedItem).Id;

使用DataGrid。SelectedCells代替。这将返回一个选定单元格的集合,您可以在其中找到需要读取的列。

,

var celldata=dataGrid1.SelectedCells[0];
var val=celldata.Column.GetCellContent(celldata.Item);