2010-03-12 58 views

回答

0

視圖可能是這裏最好的簡單解決方案。

您可以發佈您的域模型樣本,以便我們可以得到更好的幫助嗎?

有一點是肯定的:「越簡單越好」。把事情簡單化! =)

0

如果您需要連接多個表的輸出並在gridview中顯示,則需要創建視圖或存儲過程以返回必要的結果並將其數據綁定到網格。

0

而不是綁定,我會使用虛擬模式。這使得從不同來源即時提取數據變得非常容易。 Microsoft有一個關於如何使用它的教程:How to: Implement Virtual Mode in the Windows Forms DataGridView Control

實際上,不是在啓動時或使用綁定源加載所有數據,而是鉤住CellValueNeeded事件。 DataGridView將在需要顯示單元格時觸發該事件,並且您可以提供當時想要的任何數據。在您的CellValueNeeded處理程序中,您可以根據需要將DataGridView的行和列映射到表中。

private void my_init_function() { 
    datagridview.VirtualMode = true; 
    datagridview.CellValueNeeded += new System.Windows.Forms.DataGridViewCellValueEventHandler(datagridview_CellValueNeeded); 
} 

private void datagridview_CellValueNeeded(object sender, DataGridViewCellValueEventArgs e) 
{ 
    e.Value = get_my_data(e.RowIndex, e.ColumnIndex); 
} 
+0

什麼是虛擬模式? – MemoryLeak 2010-03-12 23:56:56

+0

@MemoryLeak:我通過附加說明更新了我的答案,微軟虛擬模式教程的鏈接以及一個非常簡短的例子。如果您還有其他問題,請告訴我。 – 2010-03-13 12:37:47