我試圖設置一個DataGridView來表示頁面出圖書。網格中的每個單元格表示一個MapGrid對象。用戶將使用它來設置MapGrid的路線。綁定到DataGridView,所以每個單元格都是綁定的對象而不是每一行
public class MapGrid
{
public int ID { get; set; }
public short PageNumber { get; set; }
public char ColumnNumber { get; set; }
public byte RowNumber { get; set; }
public RouteSummary Route { get; set; }
}
public class RouteSummary
{
public int ID { get; set; }
public byte RouteNumber { get; set; }
}
我想知道如果我可以使用數據綁定將我的列表MapGrid對象綁定到網格。我願做這樣的事情:
List<MapGrid> mapGrids = GetMapGrids();
dataGridView.DataSource = mapGrids;
而且我想在DataGridView顯示MapGrid.RouteSummary.RouteNumber
財產。
我在想也許我可以創建一個ILookup<byte, MapGrid>
按行分組MapGrid。那麼也許我可以將它綁定到DataGridView。但我不確定我會如何告訴它顯示RouteNumber。
如果列數是恆定的,我可以簡單地爲每列創建一個包含屬性的對象,並將這些列表綁定到DataGridView。但當然事情並不那麼簡單。列數不是恆定的。所以我不明白這是如何工作的。
任何想法?我是否試圖做超出數據綁定範圍的事情?現在我想我必須用我的MapGrid對象手動填充DataGridView,並使用CellValueChanged
事件來更新內容。
我打算假設數據綁定就像我希望的那樣工作。我決定放棄這個想法並使用TreeView而不是DataGridView。 – Ecyrb 2009-11-17 18:57:25