第一次使用TREEVIEW动态获取数据,希望有源码,在线.......

yezby20080309 2008-03-15 01:46:20
student表:
编号 年级 班级 姓名..
001 初一 1班 AA
002 初一 1班 BB
003 初一 1班 ER
004 初一 2班 SE
005 初二 1班 CC
...
TREEVIEW的效果如下:
初一
┕1班
 ┕AA
BB
ER
初二
┕2班
┕CC
当我点BB时就打开:VIEW.ASPX?ID=002

...全文
69 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yezby20080309 2008-03-15
  • 打赏
  • 举报
回复
TO everyone is no.1:
哦,你可以做个添加功能往里面添数据
数据库机构应该是

id name fid(父编号)...其他字段

在添加的时候把父编号添为你选择的结点就好了
___________________________
我不会做这个啊,你帮我写一下吧,拜托,我真不会,还有,orderid未声明怎么会事呢?谢谢了
xuan.ye 2008-03-15
  • 打赏
  • 举报
回复
我简单了声明了一下,可是只显示班级,其它的什么也没有
-----------------------------
哦,你可以做个添加功能往里面添数据
数据库机构应该是

id name fid(父编号)...其他字段

在添加的时候把父编号添为你选择的结点就好了
yezby20080309 2008-03-15
  • 打赏
  • 举报
回复

提示错误:
1,orderid未声明;orderid的初始值是哪里获得?
我简单了声明了一下,可是只显示班级,其它的什么也没有,
xuan.ye 2008-03-15
  • 打赏
  • 举报
回复
public DataTable GetList(string strWhere)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("select * ");
strSql.Append(" FROM student");
if(strWhere.Trim()!="")
{
strSql.Append(" where "+strWhere);
}

SqlDataAdapter comm = new SqlDataAdapter(strsql.ToString(), conn);
comm.SelectCommand.Parameters.AddWithValue("@niandu", (string)Session["Xuenian"]);
conn.Open();
DataSet ds = new DataSet();
comm.Fill(ds);
conn.Close();

return ds.Table[0];
}
xuan.ye 2008-03-15
  • 打赏
  • 举报
回复
DataTabel dt=GetList("年度='"+"2007"+"' order by 学号");
yezby20080309 2008-03-15
  • 打赏
  • 举报
回复
我的获取数据库是这样的:
SqlDataAdapter comm = new SqlDataAdapter("select * from manage_student_info where 年度=@niandu order by 学号", conn);
comm.SelectCommand.Parameters.AddWithValue("@niandu", (string)Session["Xuenian"]);
conn.Open();
DataSet ds = new DataSet();
comm.Fill(ds);
conn.Close();
______
怎么加到下面去?:
public DataTable GetList(string strWhere)
{//需要using system.Text
StringBuilder strSql=new StringBuilder();
strSql.Append("select * ");
strSql.Append(" FROM student");
if(strWhere.Trim()!="")
{
strSql.Append(" where "+strWhere);
}
data sqldata=new data();
return sqldata.GetTable(strSql.ToString());//这块换成自己的数据库操作对象
}
xuan.ye 2008-03-15
  • 打赏
  • 举报
回复
呵呵 这还不简单
nodTemp.NavigateUrl = "VIEW.ASPX?ID="+drv["ID"].ToString();
yezby20080309 2008-03-15
  • 打赏
  • 举报
回复
谢谢了,我试一下,但是点AA,怎么打开VIEW.ASPX?ID=001啊
xuan.ye 2008-03-15
  • 打赏
  • 举报
回复
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{ //勿删除法律法规根节点
TreeNode RootNode = new TreeNode();
RootNode.Text = "班级";
RootNode.Value = "-1";
TreeView1.Nodes.Add(RootNode);
InitNavigationTreeNode(RootNode, RootNode.Value);
}
}
public void InitNavigationTreeNode(TreeNode treeNode, string NodeID)
{
DataView dvw = new DataView();
TreeNode nodTemp;
if (orderid == 0)
{
treeNode.ChildNodes.Clear();
}
dvw.Table = GetList(" id='" + NodeID + "' ");
foreach (DataRowView drv in dvw)
{
orderid++;
nodTemp = new TreeNode();
nodTemp.Value = drv["ID"].ToString();
nodTemp.Text = drv["sutdentname"].ToString();
nodTemp.NavigateUrl = drv["url"].ToString();
treeNode.ChildNodes.Add(nodTemp);
InitNavigationTreeNode(nodTemp, nodTemp.Value);
}
}
/// <summary>
/// 获得数据列表
/// </summary>
public DataTable GetList(string strWhere)
{//需要using system.Text
StringBuilder strSql=new StringBuilder();
strSql.Append("select * ");
strSql.Append(" FROM student");
if(strWhere.Trim()!="")
{
strSql.Append(" where "+strWhere);
}
data sqldata=new data();
return sqldata.GetTable(strSql.ToString());//这块换成自己的数据库操作对象
}

62,046

社区成员

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

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

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

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