0

所以我阅读了很多关于如何从数据网格中获取值的信息。这是我创建的数据网格。

 <DataGrid AutoGenerateColumns="False" Height="257" HorizontalAlignment="Left"              Margin="12,41,0,0" Name="dataGrid1" VerticalAlignment="Top" Width="479" IsReadOnly="True"    CanUserSortColumns="False" SelectionMode="Single">
        <DataGrid.Columns>
            <DataGridTextColumn Header="Id" Binding="{Binding Id}"/>
            <DataGridTextColumn Header="Opgave" Binding="{Binding Name}"/>
            <DataGridTextColumn Header="Udvikler" Binding="{Binding Creator}"/>
        </DataGrid.Columns>
    </DataGrid>

我想要的是从所选行中的第一个单元格中获取值(ID)

这就是我想出的。

            string i = dataGrid1.SelectedCells[0].Value;

问题是很多人都在使用这个技巧,但不知何故它不理解关键字的值。我错过了什么吗?

4

2 回答 2

0

DataGrid.SelectedCells[0]返回一个DataGridCellInfo。采用

var i = (dataGrid1.SelectedCells[0].Item as YourClass).Id
于 2012-05-05T14:12:07.847 回答
0

我宁愿使用绑定对象而不是基于网格获取值。您可以很容易地将对象绑定到所选行。

var selectedObject = dataGrid1.SelectedItem as YourClass;
var id = selectedObject.Id;

只需替换YourClass为绑定到网格的对象类型即可。

于 2012-05-05T14:43:51.900 回答