通过数据绑定从数据网格单元格获取值 - wpf c#

时间:2015-04-24 13:09:03

标签: c# wpf xaml datagrid

我遇到了一个问题,试图获取当前所选行的值。我尝试了互联网上的例子,但他们没有工作。喜欢:DataRowView drv = (DataRowView)clientList.SelectedItem;

我发现但无法弄明白如何制作是如何通过数据绑定获得价值的。由于我是整个.net和c#编程的新手,我不明白如何完成我需要的东西。 基本上在我的Test.xaml.cs中,我需要获取Id列值以了解当前所选行的哪一行,以便在数据库中修改它。

<DataGridTextColumn Width="30" Header="Id" Binding="{Binding Id}"/>

已更新

public class DataClients
{
    public int Id { get; set; }

    public string Company { get; set; }

    public string Name { get; set; }
}

2 个答案:

答案 0 :(得分:1)

我遇到了同样的问题并且刚刚想出来了。

基本上,你的演员是错的,我猜Id是一个类的属性,所以你需要演员和捕捉你的类,而不是DataRowView

Client selectedClient = (Client)clientList.SelectedItem;
// This will return the instance of the class that is selected.

这样做的原因是当你绑定时,网格上的每个项实际上都与它的整个类的实例相关联,所以当你得到所选项时,它返回一个“客户端”(我猜你的类被称为类似的东西)装在一个对象中。

无论如何,这对我有用,希望这会有所帮助:)。

答案 1 :(得分:0)

看看绑定模式。这里有一个小链接向您介绍。

https://msdn.microsoft.com/en-us/library/system.windows.data.binding.mode%28v=vs.110%29.aspx