PDA

View Full Version : تشخیص دابل کلیک روی نودهای treeview



sg.programmer
جمعه 20 بهمن 1396, 14:44 عصر
سلام
من یک تری وی روی فرمم گذاشتم که چند تا نود داره و هر نودی هم چندتا ساب نود
و هر کدوم از این نودها بصورت چک باکس هستند
حالا وقتی دابل کلیک میکنم روی علامت + نودها کل نودهای اون لینک و ساب نودها چک دار میشن
سوال) چطور این خاصیت که روی علامت + دابل کلیک بشه ساب نودهام چک دار نشند؟ ولی روی چک باکس دابل کلیک شد اون موقع تمامی ساب نودها مربوطه چک دار بشند؟

sg.programmer
جمعه 20 بهمن 1396, 22:49 عصر
با این روش میشه اگه نودی از پرنت سلکت شد زیر شاخه هاش چک دار گردند. در اینجا قرار میدم تا اگه کسی نیاز داشت ازش استفاده کنه

private void treeView1_AfterCheck(object sender, TreeViewEventArgs e)
{
if (busy) return;
busy = true;
try
{
checkNodes(e.Node, e.Node.Checked);
}
finally
{
busy = false;
}
}

private void checkNodes(TreeNode node, bool check)
{
foreach (TreeNode child in node.Nodes)
{
child.Checked = check;
checkNodes(child, check);
}
}

sg.programmer
یک شنبه 22 بهمن 1396, 11:57 صبح
من از همین کد را برای دابل کلیک استفاده میکنم
دابل کلیک خیلی بد عمل میکنه کسی نمونه کدی در این مورد داره؟؟ که با دابل کلیک زیر شاخه های (علامت دار و بی علامت ) گردند؟؟