Click here to Skip to main content
15,884,298 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
here i have this code where i want to delete all the entries from database which are unchecked in the treeview checkbox. i am able to reach only till the parent nodes.my code doesnt reach till childnodes. kindly help.

p.s. i dont want to delete the nodes, i just want to find out which nodes are unchecked on button_click event and delete the values of those nodes in the database.
thanks

foreach (TreeNode tn in this.TreeView1.Nodes)
{
int strTreeValue = Convert.ToInt32(tn.Value);
if (tn.Checked == false)
{
SqlCommand com = new SqlCommand("Delete From Role_Menu Where Menu_id=" + strTreeValue, con);
com.ExecuteNonQuery();
}
if (tn.ChildNodes.Count > 0)
{
foreach (TreeNode Ctn in TreeView1.Nodes)
{
SqlCommand com = new SqlCommand("Delete From Role_Menu Where Menu_id=" + strTreeValue, con);
com.ExecuteNonQuery();
}
}
}
Posted

i want to delete the database entries of all unchecked nodes including parent and child nodes.
 
Share this answer
 
You want to delete unchecked nodes . is it?
 
Share this answer
 
I think you make a simple mistake. You need to find Child Nodes so your loop must be go through the "tn.ChildNodes". see below code block...
Your code:
C#
if (tn.ChildNodes.Count > 0)
{
    foreach (TreeNode Ctn in TreeView1.Nodes)
    {
        SqlCommand com = new SqlCommand("Delete From Role_Menu Where Menu_id=" + strTreeValue, con);
        com.ExecuteNonQuery();
    }
}

Change Code:
C#
if (tn.ChildNodes.Count > 0)
{
    foreach (TreeNode Ctn in tn.ChildNodes)
    {
        SqlCommand com = new SqlCommand("Delete From Role_Menu Where Menu_id=" + strTreeValue, con);
        com.ExecuteNonQuery();
    }
}


Try this maybe it's help you.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900