如何动态的指定展开到第几级?
比如我有个文本框,一个按钮,一棵树,我在文本框中输入2,点击按钮就展开树到第二级,输入3,点按钮就展开到第三级,怎么做?
比如我有个文本框,一个按钮,一棵树,我在文本框中输入2,点击按钮就展开树到第二级,输入3,点按钮就展开到第三级,怎么做?
解决方案 »
- xml,SimpleContent 列问题
- 一个应该很弱智的问题,搞了一下午,未果!
- html中的代码``请问怎么才可以在cs文件中取得fileText的值啊```100分~!
- |M| 第四贴:当你的多个ascx所要的SQL数据库数据在aspx里面的一个dataSet和一些变量中已经存在的时候,大家是怎么做的
- 问一下有关数据库字符串的问题
- 如何在datagrid里显示access数据库里的信息
- dataset如何放到viewstate里面?
- 如何下载FTP Server上的文件
- 还是老问题!怎么设定datagrid里hyperlink的样式!
- 关于控件属性传值
- 问个样式表问题
- 【急】关于CSS左右布局的问题!!!
private void ExTreeByLever(TreeNode tn ,int lever)
{
foreach (TreeNode sub in tn.Nodes)
{
tn.Expand();
if (tn.Level < lever)
{
ExTreeByLever(tn, lever);
}
}
}
改的代码如下:
private void ExTreeByLever(TreeNode tn, int lever)
{
foreach (TreeNode sub in tn.ChildNodes)
{
if (sub.Depth < lever)
{
sub.Expand();
}
ExTreeByLever(sub, lever);
}
} //调用:
ExTreeByLever(this.TreeView1.Nodes[0], int.Parse(this.iptDepth.Value.Trim()));
{
foreach (TreeNode sub in tn.ChildNodes)
{
if (sub.Depth < lever)
{
sub.Expand();
}
else
{
sub.ToggleExpandState();
}
ExTreeByLever(sub, lever);
}
} //调用:
ExTreeByLever(this.TreeView1.Nodes[0], int.Parse(this.iptDepth.Value.Trim()));
protected void Button1_Click(object sender, EventArgs e)
{
int i = Convert.ToInt32(TextBox2.Text);
int dth = 0; foreach (TreeNode TN in TreeView2.Nodes)
{
if (dth < i)
{
TN.Expand();
TreeNodeExpand(TN, i);
}
else
{
TN.Expanded = false;
TreeNodeExpand(TN, i);
}
}
} public void TreeNodeExpand(TreeNode TreeN,int dth)
{ foreach (TreeNode no in TreeN.ChildNodes)
{
if (no.Depth < dth)
{
no.Expand();
TreeNodeExpand(no, dth);
}
else
{
no.Expanded = false;
TreeNodeExpand(no, dth);
}
} }
ToggleExpandState()这个只是切换节点的展开和折叠状态,并不是折叠节点.修改如下: private void ExTreeByLever(TreeNode tn, int lever)
{
foreach (TreeNode sub in tn.ChildNodes)
{
if (sub.Depth < lever)
{
sub.Expand();
}
else
{
sub.Expanded = false;
}
ExTreeByLever(sub, lever);
}
} //调用:
ExTreeByLever(this.TreeView1.Nodes[0], int.Parse(this.iptDepth.Value.Trim()));
感谢lonelygames!