This is a pretty tall order for the Quick Answer forum.
If you paid enough I would happily write the code for you. :)
I assume you get the data from the database into one or more data tables.
As a start you can look at these articles:
Create Treeview From Datatable In C#| Dynamic Treeview Control In C# | Treeview Nodes In C# |How To Bind Nodes To Treeview Control At Runtime In C# | Author Code | AuthorCode[
^]
[UPDATE]
Seems to be a bug in part of the code from the link above.
You will get the compiler error "Not all code paths return a value."
See the fix below.
private TreeNode Searchnode(string nodetext, TreeView trv)
{
foreach (TreeNode node in trv.Nodes)
{
if (node.Text == nodetext)
{
return node;
}
}
return null;
}
Then you have to take care of the case that the method can return null.
Populate a TreeView Control C#[
^]
As for drag & drop, look here:
Dragging tree nodes in C#[
^]
These articles should get you started.