2014-01-10 63 views
0

目前我正在試圖以兩個列表綁定到DataGrid中的WPF綁定兩個列表一個數據網格

int rows = Convert.ToInt32(rowsTB.Text); 
     double offset = Convert.ToDouble(offsetTB.Text); 
     double startValue = Convert.ToDouble(startValueTB.Text); 
     List<double> valuesList = new List<double>(); 
     for (int i = 0; i < rows; i++) 
     { 
      valuesList.Add(startValue += offset); 
     } 

     List<double> maxList = new List<double>(); 
     foreach (var x in valuesList) 
     { 
      maxList.Add(MaxValue(x)); 
     } 
     valuesGrid.ItemsSource = valuesList; 
     maxGrid.ItemsSource = maxList; 

這是我當前的片段對我目前有,我創建了兩臺數據網格與一列,每個數據網格綁定到一個列表,但這不是我真正想要的,我想要有1個數據網格,每個數據網格綁定到一個列表。

如果有一個可能性與一個ojbect有2個列表可以請給我一個例子嗎? 謝謝

回答

2

您可以構建一個DataTable或創建一個自定義對象並將其添加到一個List。我更喜歡自定義對象,因爲它更像OOP。因此,構建一個自定義對象,創建這個類...

public class DataItem 
{ 
    public double Values {get; set;} 
    public double MaxValue {get; set;} 
} 

然後做你正在做的,而是在DataItem類添加到列表中的處理...

for (int i = 0; i < rows;i++) 
{ 
    DataItem item = new DataItem(); 
    item.Value = startValue += offset; 
    item.MaxValue = MaxValue(item.Value); 

    valuesList.Add(item); 
} 

最後,將列表綁定到DataGrid ...

valuesGrid.ItemsSource = valuesList; 
+0

謝謝!其中之一就是datagrid中的值沒有被正確綁定,或者我需要轉換或者什麼,因爲現在每個單元格都填充了類似於「wpfapplication.mainwindow.dataitem」的內容 – eMizo

+0

當然,您需要設置綁定在列中的表達式......我假設你知道所有這些東西......它看起來像這樣...'' – Leo

+0

我的錯!我設置了綁定但沒有路徑:D非常感謝!真的很感激它:) – eMizo