نمایش داده های بانک اطلاعاتی در treeView

با فرض اینکه یک دیتابیس با نام Person داشته باشید و این دیتابیش دارای یک جدول با نام Table1 به صورت زیر باشد :
display-database-data-in-treeview-csharp-01
داده هایی را در جدول به صورت زیر وارد می کنیم :
display-database-data-in-treeview-csharp-02
حال می خواهیم داده های ستون ID از جدول را در گره مادر و ستون FirstName را در گره فرزند بریزیم. برای این کار کافیست که در رویداد Load فرم کدهای زیر را بنویسیم :

private void Form1_Load(object sender, EventArgs e)
{
    treeView1.Nodes.Clear();

    SqlConnection connection1 = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\arta\Documents\Person.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
    SqlCommand command1 = new SqlCommand("select * from Table1");
    command1.Connection = connection1;
    command1.Connection.Open();
    SqlDataReader reader1 = command1.ExecuteReader();

    for (int num1 = 0; reader1.Read(); num1++)
    {
        treeView1.Nodes.Add(reader1[0].ToString());
        int num3 = reader1.FieldCount - 1;
        for (int num2 = 1; num2 <= num3; num2++)
        {
            treeView1.Nodes[num1].Nodes.Add(reader1[num2].ToString());
        }
    }       
}

حال برنامه را اجرا و نتیجه را مشاهده کنید :
display-database-data-in-treeview-csharp-03