Halil Han BADEM
Cevabın için teşekkür ederim
O zaman şöyle ben yapıyı anlatayım. Veritabanım aşağıdaki gibi.. Treeview nesnesine bunları listeledikten sonra sürükle bırak işlemini ve veritabanına değişiklikten sonraki halini kaydetme işini halledemiyorum.
Kodlarım aşağıdaki gibidir. Tabi bunu yapan telerik devexpress gibi ücretli compenetler var ama ben kendi yağımla kavrulmak istiyorum... Umarım derdimi anlatabilmişimdir.
https://gijgo.com/tree/demos/bootstrap-treeview-drag-and-drop bu linktedi gibi olacak ama ASP.NET olacak MVC olmayacak.

void KirilimDoldur()
{
dt_TreeView = this.GetData();
TreeView1.Nodes.Clear();
DataRow[] rootkat = dt_TreeView.Select("UST_STOK_TIP_NO=0");
altkategoridoldur(rootkat, null);
}
private DataTable GetData()
{
string sql = "SELECT STOK_TIP_NO,STOK_TIP_ADI,UST_STOK_TIP_NO,TEMEL_TIP FROM STOK_TIP WHERE TEMEL_TIP='F'";
DataTable dts = system.GetDataTable(sql);
if (dts.Rows.Count > 0)
{
dts = system.GetDataTable(sql);
}
return dts;
}
protected void altkategoridoldur(DataRow[] drc, TreeNode treeNode)
{
TreeNode child = new TreeNode();
foreach (DataRow dr in drc)
{
child = new TreeNode{Text = dr["STOK_TIP_ADI"].ToString(),Value = dr["STOK_TIP_NO"].ToString()};
if(dr["UST_STOK_TIP_NO"].ToString()=="0"){TreeView1.Nodes.Add(child);}else{treeNode.ChildNodes.Add(child);}
DataRow[] SubRows = dt_TreeView.Select("UST_STOK_TIP_NO = " + dr["STOK_TIP_NO"].ToString());
altkategoridoldur(SubRows, child);
}
}