/ / गहरी जड़ वाले डटलिस्ट के साथ ट्रीव्यू भरें - c #, .net, ट्रीव्यू, sql-server-2008-r2

डीप-रूटेड डटलिस्ट के साथ ट्रीव्यू भरें - c #, .net, ट्रीव्यू, sql-server-2008-r2

मेरे पास एक तालिका है जिसका नाम 3 कॉलम वाला विभाग है[डिपार्टमेंटआईडी, पेरेंटेपिड, डिपार्टमेंटनाम]। प्रत्येक विभाग में एक मूल विभाग (ParentDepID) हो सकता है जिसमें एक माता-पिता इत्यादि हो सकते हैं। मैं इस डेटा को लोड करना चाहता हूं sql-server ए के लिए treeview.

यह डेटा का एक काल्पनिक उदाहरण है

DepID ------ अभिभावक ------- नाम

1 ---------------- अशक्त ------------ HospitalA
2 ----------------- 1 -------------- SurgeryDepartment
3 ----------------- 1 -------------- CancerDepartment
4 ----------------- 1 -------------- HeartDiseases
5 ----------------- 2 -------------- BrainSurgery
6 ----------------- 2 -------------- प्रसव
7 ----------------- 5 -------------- UpperBrainSurgery
8 ----------------- 5 -------------- LowerBrainSurgery

यह अधिक गहरा (n) बार जा सकता है, मैं अपने ट्रीव्यू में ऐसे डेटा लोड करना चाहता हूं।
मैंने अब तक क्या प्रयास किया है? दुर्भाग्य से मैं ऐसा करने के लिए नहीं जानता, इसलिए कृपया मुझे इस विचार के साथ मदद करें।

उत्तर:

उत्तर № 1 के लिए 1
            // Manage Tree View Nodes in RunTime
// In order to manage a node you should set a key for each node
// in your case records id"s could be fine
treeView1.Nodes.Add("RootNode1Key","Root Node1");
treeView1.Nodes.Add("RootNode2Key", "Root Node2");
// adds a node in runtime with title Root Node
//Now add a Child to "Root Node 2"
// first find the node and make a pointer to it :^)
TreeNode FoundedNode;
FoundedNode = treeView1.Nodes.Find("RootNode2Key", true)[0];
// if you create a unique key for each node the find function returns
// a tree node array with only one node and you access it like above
// else you retrieve many records of TreeNode
FoundedNode.Nodes.Add("RootNode2Childe1", "Root Node2 Child 1");
// hey now you added a child node to RootNode2
// you want to add a child for it in depth
// 2 ways :
// 1: yous find method  treeView1.Nodes.Find("RootNode2Childe1", true)[0];
// 2: Following
FoundedNode.Nodes["RootNode2Childe1"].Nodes.Add("RootNode2Childe1Child1", "my parent is RootNode2Childe1");

अब यदि आप इसे एक तरह से निकालना चाहते हैं, तो यह आसान है

private void button2_Click(object sender, EventArgs e)
{
// i am sure you know how to add nodes now remove a node
TreeNode FoundedNode;
FoundedNode = treeView1.Nodes.Find("RootNode2Childe1Child1", true)[0];
FoundedNode.Remove();
}

लेकिन मेरा सुझाव है कि आप नेट खोजें कुछ हैंतरीकों और बेहतर समाधान आप एक डेटा स्रोत का उपयोग कर सकते हैं और फिर जब आपकी मेज पर एक रिकॉर्ड जोड़ा जाता है और एक रिकॉर्ड हटा दिया जाता है तो आपका ट्री अपडेट अपडेट होता है और इसके विपरीत

*अन्य ईरानी लोगों और प्रोग्रामर को इस समुदाय का एक सदस्य जहाज प्रदान करें *


जवाब के लिए 0 № 2

सबसे पहले आपको रूट नोड (माता-पिता के बिना सबसे बुनियादी एक) जोड़ने की जरूरत है और फिर चाइनीज़ोड्स जोड़ना होगा। यह लिंक आपकी मदद करेगा: DataBase से TreeView आबाद करें