如何从Silverlight DataGrid获取行数据?

| 在Silverlight中,如何从充满数据的DataGrid中获取行数据? 我已经做到了这一点(在一种接收按钮单击行的方法中:
DataGridRow item = (DataGridRow)dg.SelectedItem;
现在,如何获得我认为是所选行的项目的各个组成部分? 帮帮我如何将可观察的集合绑定到网格? 投射到对象时如何使用投射系统? 当我将数据读入网格时,我使用了此类:
public class Data
{
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public int Age { get; set; }
    public bool Available { get; set; }
    public int index_1 { get; set; }
    public int index_2 { get; set; }
    public int index_3 { get; set; }
    public int index_4 { get; set; }
    public int index_5 { get; set; }
    public int index_6 { get; set; }
    public int index_7 { get; set; }
    public int index_8 { get; set; }
    public int index_9 { get; set; }
    public int index_10 { get; set; }
    public int index_11 { get; set; }
    public int index_12 { get; set; }
    public int index_13 { get; set; }
    public int index_14 { get; set; }
    public int index_15 { get; set; }
}
所以当我读回书时我该如何投射 这不起作用:
Data _mydata = new Data();  
YValue = (_mydata.index_1)dg.SelectedItem;
这不起作用:
YValue = (index_1)dg.SelectedItem;
这不起作用:
YValue = (Data().index_1)dg.SelectedItem;
    
已邀请:
        如果已将grid5绑定到网格,则可以将所选项目仅投射到对象中-
(Foo)dg.SelectedItem
编辑-更新答案更新的问题 简单的答案是,如果您不使用MVVM(我认为您的帖子中没有使用),则在背后的代码中创建Data的集合(最好是ObservableCollection),并将grids itemsource属性设置为您的集合
public ObservableCollection<Data> MyCollection{get;set;}

void SetGridItemsSource()
{
// populate your collection here, then use the below line to associate it with your
// grids itemssource      
MyGrid.ItemsSource = MyCollection;

}

public void GetSelectedItem()
{
   //Simply cast the selected item to your type
   Data selectedItem = (Data)MyGrid.SelectedItem;
}
    
        
DataGridRow item = (DataGridRow)dg.SelectedItem;
int index1 = ((Data)item).index_1;
这将为您提供第一个索引的值。     

要回复问题请先登录注册