如何将DataGrid列复制到数组C#WPF

时间:2014-09-16 00:27:37

标签: c# wpf datagrid

我正在寻找将Datagrid列复制到double数组的代码。

  Period   Acc
  0.1      3
  1        4
  2        7
  5.5      10.5

例如,我想为Column Perioed提供一个双数组。数据网格名称是dg。我试图找出现有的Q& A,但我发现的只是窗口形式或数据网格视图,其中包括"行"。我发现Rows属性不在datagrid类中,而是在datagridview中。有谁知道怎么做?谢谢,

2 个答案:

答案 0 :(得分:2)

@Daloupe是对的。你是如何首先填充DataGrid的?使用数据源要比尝试直接从DataGrid管理数据容易得多。例如,如果您的数据是从名为Data的类对象列表中填充的,该对象具有两个双精度值(Period和Acc),则可以使用源列表上的扩展方法来提取Period值。

// You have a list of Data elements List<Data> gridData that is the data 
// source of your DataGrid
double[] periods = gridData.Select(x => x.Period).ToArray();

答案 1 :(得分:1)

一种冗长的方式是:

var colVals = List<double>();
foreach(var row in Datagrid.Rows)
{
     colVals.Add(Convert.ToDouble(row.Cells[0]));
}

也许?

编辑:您是否正在使用Datagrid而不是Datagridview,woudl依赖于您的数据源,不是吗?