没什么分,但有个问题。能帮忙吗?

liu_ff123 2007-05-23 04:56:52
private void CreateTree(int belong, Microsoft.Web.UI.WebControls.TreeNode rootnode)
{
DataSet ds = new DataSet();
OleDbConnection conn=(new Data.DbAccess()).DbConn();
OleDbDataAdapter oda=new OleDbDataAdapter("select * from gaoxinqi where ParentNode="+belong,conn);
oda.Fill(ds);
foreach(DataRow dr in ds.Tables[0].Rows)
{
Microsoft.Web.UI.WebControls.TreeNode treenode = new Microsoft.Web.UI.WebControls.TreeNode();
treenode.Text = dr["NodeName"].ToString().Trim();
treenode.Expanded = true;
treenode.NavigateUrl="Display.aspx?uid="+dr["Id"].ToString();
treenode.Target="main";
rootnode.Nodes.Add(treenode);
int id = int.Parse(dr["Id"].ToString().Trim());
CreateTree(id, treenode);
}
}


private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
Microsoft.Web.UI.WebControls.TreeNode rootnode = new Microsoft.Web.UI.WebControls.TreeNode();
rootnode.Expanded = true;
rootnode.Text="公司信息";
rootnode.NavigateUrl="Display.aspx?uid=0";
rootnode.Target="main";
TreeView1.Nodes.Add(rootnode);
CreateTree(0, rootnode);


}
怎么样实现当有下一级结点时,单击它时它展开,不链接。当没有下一级结点时就链接。
数据库结构是这样的(简化)
Id NodeName ParentNode
1 董事办 0
2 总经办 0
3 制造部 0
4 工程部 3
5 SMT 3


...全文
199 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hrjdt61144 2007-05-24
  • 打赏
  • 举报
回复
帮你顶下 虽然我不知道``
liu_ff123 2007-05-24
  • 打赏
  • 举报
回复
xiaobingking(红衣) 结点是从表中读出来的,那个是Value 怎么设的?
红衣老大 2007-05-24
  • 打赏
  • 举报
回复
你应该这样想
由2各种东西 1格式树枝 另一个事叶子
树枝包含叶子不能连接 叶子可以连接但不能有下级叶子

所以你添加note的时候就要区分
如果有下级或者将来可能有 就说明这是一个树枝 那么不给他设置NavigateUrl属性 顺便 Value=0 没有NavigateUrl 就不会连接了
如果没有下级 就设置 NavigateUrl属性 顺便 Value=1

然后
Protected Sub TreeView1_SelectedNodeChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TreeView1.SelectedNodeChanged
If Me.TreeView1.SelectedNode.Value > 0 Then
Me.TreeView1.SelectedNode.ToggleExpandState()
End If
End Sub

这样就可以区分 展开和连接了

按照你的表结构 部门就是 树枝 员工就是叶子
红衣老大 2007-05-24
  • 打赏
  • 举报
回复
Value 就是treenode的属性阿 就像 NavigateUrl一样的设置

我用的2005 难道你不是?
liu_ff123 2007-05-24
  • 打赏
  • 举报
回复
我的TreeView 怎么没有 SelectedNode 属性啊
Qim 2007-05-23
  • 打赏
  • 举报
回复
在结点中加标志.
当单击时判断。

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧