Ini langkah-langkah artikel oleh menjelaskan cara untuk mengisi TreeView kontrol dengan menggunakan data Extensible Markup Language (XML) di Visual Dasar.NET. Karena kedua XML dan TreeView kontrol mewakili data dalam format hierarki, TreeView kontrol adalah pilihan alami untuk menampilkan XML data.
The TreeView kontrol telah Node Koleksi dengan akar TreeNode objek. Setiap TreeNode pada gilirannya telah sendiri Node Koleksi yang memegang lebih dari satu anak TreeNode.
CATATAN: Contoh ini menggunakan Document Object Model (DOM) parsing kelas dari.NET untuk proses XML.
Untuk informasi lebih lanjut tentang desain XML dalam.NET Framework, lihat bagian "Referensi" ini artikel.
The TreeView kontrol telah Node Koleksi dengan akar TreeNode objek. Setiap TreeNode pada gilirannya telah sendiri Node Koleksi yang memegang lebih dari satu anak TreeNode.
CATATAN: Contoh ini menggunakan Document Object Model (DOM) parsing kelas dari.NET untuk proses XML.
Untuk informasi lebih lanjut tentang desain XML dalam.NET Framework, lihat bagian "Referensi" ini artikel.
Persyaratan
Daftar
berikut menguraikan fitur perangkat keras, perangkat lunak, jaringan
infrastruktur, dan paket layanan yang Anda butuhkan:
- Microsoft Windows XP, Microsoft Windows 2000, atau Microsoft Windows NT 4.0 Paket Layanan 6a
- Microsoft Data akses komponen 2.6 (MDAC) atau kemudian
- Microsoft Visual Studio.NET
Artikel ini mengasumsikan bahwa Anda sudah familiar dengan berikut topik:
- Visual Basic.Sintaks bersih
- XML dan standar-standar terkait
- Windows Forms
Langkah-langkah untuk membuat dan TreeView kontrol dengan XML
- Paste kode contoh XML berikut dalam file teks baru bernama "Sample.xml". File ini adalah contoh XML data untuk contoh ini:
<?xml version="1.0"?>
<family>
<parent>id="grandfather"
<parent>id="father"
<parent>id="brother"
<child>id="niece"
</child>
</parent>
<parent>id="me"
<child>id="son"</child>
<child>id="daughter"</child>
</parent>
<child>id="sister"</child>
</parent>
<parent>id="uncle"
<parent>id="cousin sister"
<child>id="second cousin"</child>
</parent>
<child>id="cousin brother"</child>
</parent>
</parent>
</family>
2 Membuat aplikasi berbasis Windows baru dalam Visual Basic .NET. Form1 ditambahkan ke aplikasi secara default.
3 Tarik baru TreeView, Tombol, Label, dan TextBox kontrol ke Form1.
4 Menambahkan kode contoh berikut sebagai baris pertama dalam kode jendela di Form1.vb:
mports System.Xml
5 Dalam Form1.vb
file, menggantikan seluruh kode setelah "Windows Form Designer
dihasilkan kode" bagian dengan kode contoh berikut:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
' Initialize the controls and the form.
Label1.Text = "File Path"
Label1.SetBounds(8, 8, 50, 20)
TextBox1.Text = Application.StartupPath() & "\Sample.xml"
TextBox1.SetBounds(64, 8, 256, 20)
Button1.Text = "Populate the TreeView with XML"
Button1.SetBounds(8, 40, 200, 20)
Me.Text = "TreeView control from XML"
Me.Width = 336
Me.Height = 368
TreeView1.SetBounds(8, 72, 312, 264)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
' SECTION 1. Create a DOM Document and load the XML data into it.
Dim dom As New XmlDocument()
dom.Load(TextBox1.Text)
' SECTION 2. Initialize the treeview control.
TreeView1.Nodes.Clear()
TreeView1.Nodes.Add(New TreeNode(dom.DocumentElement.Name))
Dim tNode As New TreeNode()
tNode = TreeView1.Nodes(0)
' SECTION 3. Populate the TreeView with the DOM nodes.
AddNode(dom.DocumentElement, tNode)
TreeView1.ExpandAll()
Catch xmlEx As XmlException
MessageBox.Show(xmlEx.Message)
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
Private Sub AddNode(ByRef inXmlNode As XmlNode, ByRef inTreeNode As TreeNode)
Dim xNode As XmlNode
Dim tNode As TreeNode
Dim nodeList As XmlNodeList
Dim i As Long
' Loop through the XML nodes until the leaf is reached.
' Add the nodes to the TreeView during the looping process.
If inXmlNode.HasChildNodes() Then
nodeList = inXmlNode.ChildNodes
For i = 0 To nodeList.Count - 1
xNode = inXmlNode.ChildNodes(i)
inTreeNode.Nodes.Add(New TreeNode(xNode.Name))
tNode = inTreeNode.Nodes(i)
AddNode(xNode, tNode)
Next
Else
' Here you need to pull the data from the XmlNode based on the
' type of node, whether attribute values are required, and so forth.
inTreeNode.Text = (inXmlNode.OuterXml).Trim
End If
End Sub
6 Tekan F5 untuk membangun dan menjalankan aplikasi. Pastikan bahwa XML file path benar dan kemudian klik tombol. XML data yang akan muncul di TreeView kontrol.
CATATAN:
Sumber bisa sebuah file, URL atau arus XML. Merujuk kepada bagian
"Referensi" dari artikel ini untuk informasi tentang penggunaan
XmlDocument kelas untuk memuat XML data dari berbagai sumber daya.
Langkah-langkah untuk mengisi TreeView kontrol dengan Data yang diperlukan
Contoh kode sebelumnya peta pohon XML data langsung ke TreeView
dan menampilkan semua data. Atau, Anda dapat menambahkan ekstra
informasi untuk menampilkan atau melompat tidak diinginkan data.
Dalam banyak kasus, Anda mungkin ingin menampilkan hanya bagian dari XML data. Bagian dari data yang Anda ingin menampilkan Mei menjadi dinamis dibangun, hasil dari Extensible Transformasi Stylesheet Language (XSL), atau hasil dari permintaan XPath. Ini bab menjelaskan bagaimana membangun dokumen XML baru dengan hanya diperlukan node Kemudian tambahkan dokumen baru untuk TreeView kontrol.
Sebagai contoh, mengambil langkah-langkah berikut hanya elemen anak originial XML data dengan menggunakan XPath permintaan, dan Kemudian tambahkan daftar ini sebagai suatu node baru untuk TreeView.
Dalam banyak kasus, Anda mungkin ingin menampilkan hanya bagian dari XML data. Bagian dari data yang Anda ingin menampilkan Mei menjadi dinamis dibangun, hasil dari Extensible Transformasi Stylesheet Language (XSL), atau hasil dari permintaan XPath. Ini bab menjelaskan bagaimana membangun dokumen XML baru dengan hanya diperlukan node Kemudian tambahkan dokumen baru untuk TreeView kontrol.
Sebagai contoh, mengambil langkah-langkah berikut hanya elemen anak originial XML data dengan menggunakan XPath permintaan, dan Kemudian tambahkan daftar ini sebagai suatu node baru untuk TreeView.
1 Paste kode berikut sebelum TreeView1.ExpandAll baris dalam contoh sebelumnya:
' SECTION 4. Create a new TreeView Node with only the child nodes.
Dim nodelist As XmlNodeList = dom.SelectNodes("//child")
Dim cDom As New XmlDocument()
cDom.LoadXml("<children></children>")
Dim node As XmlNode
For Each node In nodelist
Dim newElem As XmlNode = cDom.CreateNode(XmlNodeType.Element, node.Name, node.LocalName)
newElem.InnerText = node.InnerText
cDom.DocumentElement.AppendChild(newElem)
Next
TreeView1.Nodes.Add(New TreeNode(cDom.DocumentElement.Name))
tNode = TreeView1.Nodes(1)
AddNode(cDom.DocumentElement, tNode)
2 Membangun dan kemudian menjalankan aplikasi. Aplikasi ini harus menampilkan baru "anak" akar di TreeView, selain untuk data asli.
REFERENSI
Untuk informasi tambahan, Lihat artikel Basis Pengetahuan berikut dan Microsoft.NET Software Development Kit (SDK) dokumentasi:
313651 (http://support.microsoft.com/kb/313651/ ) Peta jalan untuk XML di.NET Framework
System.xml Namespace
.aspx http://MSDN.Microsoft.com/en-us/library/System.XML (vs.71) (http://msdn.microsoft.com/en-us/library/system.xml(vs.71).aspx)
Microsoft.Pembangunan bersih.aspx http://MSDN.Microsoft.com/en-us/library/System.XML (vs.71) (http://msdn.microsoft.com/en-us/library/system.xml(vs.71).aspx)
http://MSDN.Microsoft.com/XML (http://msdn.microsoft.com/xml)
Hai. aku juga punya materi yang berhubungan dengan kontrol data. kunjungi saja di.
BalasHapushttp://repository.gunadarma.ac.id/bitstream/123456789/3200/1/Kommit2004_elektronika_komputer_013.pdf