2014-03-31 70 views
-1

我想在vb.net中填充一個樹視圖,其中sql server的表名和每個表的列名作爲子節點。我可以知道如何做到這一點?在vb.net中填充樹視圖

+1

你應該提及你已經嘗試了什麼,你的問題是什麼!和代碼! –

+0

如果你將問題的範圍縮小一點,會有所幫助,但我在下面發表了一個答案,看起來可能過於籠統,但是由於你的問題過於寬泛,我可以用最少的時間做出最好的答案。 –

+0

-1沒有背景,技術使用(WinForms \ WPF,DataReaders \ Entity \ L2S),代碼... – dovid

回答

2
select TABLE_NAME from INFORMATION_SCHEMA.TABLES 

獲取數據庫中所有表上的單個返回表,每個表作爲一個新行

select COLUMN_NAME 
from INFORMATION_SCHEMA.COLUMNS 
where TABLE_NAME = YOUR TABLE NAME 

獲取表中的所有列上一個返回表的每個列名作爲新行

我會告訴你添加樹節點的邏輯。

For each row as datarow in {select TABLE_NAME from INFORMATION_SCHEMA.TABLES} 
Create TreeNode as new treenode with Text Row.column[0] 
    For each innerrow as datarow in select {COLUMN_NAME 
             from INFORMATION_SCHEMA.COLUMNS 
             where TABLE_NAME = row.column[0]} 

    Create innertreenode as new treenode with Text innerrow.column[0] 
    Add innertreenode to treenode. 
    next 

Yourtreeview.nodes.add(treenode) 
next 

注意上面的不是實際的代碼,但邏輯或算法,但對於查詢SQL是實際的代碼和IM假設你是不是完全新的VB.net。在Vb.net中,實際代碼將更長,即連接字符串/連接到數據庫,執行查詢並將數據檢索到表對象,然後將數據添加到樹視圖控件。我剛剛寫的是編寫它的基本邏輯,對樹節點屬性和方法進行一些窺探,以及如果您不知道數據庫連接字符串/等來將邏輯解析爲實際代碼或在下面詢問。

+0

非常感謝你:) – user3422209

+0

@ user3422209在這篇文章中標記爲ANSWER,如果它幫助你解決你的問題。 – Hoh