2011-01-13 72 views
1

我目前正在重構一些非常糟糕的舊代碼。我將有一個創建TreeView的類,填充節點等,並顯示在Winform上。 Treeview上的每個節點都代表一些數據,當用戶單擊它時,Winform上也會顯示一個datagridview。 datagridview也會在新類中生成。C#事件和控制交互

我的想法是,當Winform加載時,創建並顯示Treeview並使用事件監視節點點擊。當Winform處理這樣一個事件時,它會創建數據網格對象並顯示它。

這是構建這個最好的方法嗎?

謝謝。

回答

1

是的,你所描述的是一種在WinForms中做事情的標準方法。

你不需要每次都創建DataGridView,只需將它放在窗體上,並在事件處理程序中從某處加載數據並通過分配DataGridView.DataSource來更改DataGridView的內容。

在表單設計器中,爲DataGridView定義列,並將它們的DataPropertyName設置爲集合中數據對象的相應屬性的名稱。

注意:如果使用ADO.NET從數據庫中讀取對象,則分配給DataGridView.DataSource的數據可以是對象的集合,也可以是DataTable。

+0

感謝您的回覆。 – 2011-01-13 19:33:43

1

只需使用TreeView.AfterSelect事件。只要用戶通過鍵盤或鼠標選擇另一個節點,它就會觸發。如果完全更換舊DGV,務必處置舊DGV。

+0

謝謝漢斯.... – 2011-01-13 19:39:50