我现在做的treeview是这样的如图:
,但是数据量大的话,页面加载很慢,我现在想这样做,点击根节点才加载子节点,点击子节点在加载孙子节点,该如何做,网上找了很多例子,不起作用。
我的部分代码如下:页面:<asp:TreeView ID="TreeView1" runat="server" EnableViewState="false" ShowLines="True"
Width="170px" Font-Size="9pt" ForeColor="Black" NodeIndent="15" EnableClientScript="true" ShowCheckBoxes="All" ExpandDepth="0">
</asp:TreeView>
cs:
void LoadDataBind()
{
List<Entity.JZQDAB> li = Get_JZQ();
//var temp = Public.GetOnlineTerminal(ConfigurationManager.AppSettings["SQLConnString"] as string);
this.TreeView1.Nodes.Clear();
foreach (var t in li)
{
var nodes = new TreeNode("<input type='radio' name='top' id='Id" + t.qy + t.dz + "' onclick=GetTop('" + t.id + "','" + t.qy + "','" + t.dz + "')>" + t.tqmc + "(" + t.qy + ":" + t.dz + ")", t.id.ToString());
nodes.ShowCheckBox = false;
nodes.Expanded = false;
nodes.SelectAction = TreeNodeSelectAction.Expand;
this.TreeView1.Nodes.Add(nodes);
using (var row = CJQ_Bll.Get_CJQ_JZQIS(t.id))
{
while (row.Read())
{
var node1 = new TreeNode(row["azdz"].ToString(), row["id"].ToString());
node1.SelectAction = TreeNodeSelectAction.None;
node1.Expanded = false;
node1.ShowCheckBox = false;
nodes.ChildNodes.Add(node1);
using (var chlid = JZQDAB_BLL.Get_JZQ_Child(row["id"].ToString()))
{
while (chlid.Read())
{
var value = chlid["yhh"].ToString() + ":" +
chlid["yhm"].ToString() + ":" + chlid["azdz"].ToString() +
":" + chlid["zzxh"].ToString() + ":" + chlid["cldh"].ToString() +
":" + chlid["txsl"].ToString() + ":" + chlid["txdk"].ToString() +
":" + chlid["txlx"].ToString() + ":" + chlid["txdz"].ToString() +
":" + chlid["txmm"].ToString() + ":" + chlid["flgs"].ToString() +
":" + chlid["zsgs"].ToString() + ":" + chlid["xsgs"].ToString() +
":" + row["cjqdz"] + ":" + chlid["yhdlh"].ToString() + ":" + chlid["yhxlh"].ToString() +
":" + t.qy + ":" + t.dz;
var nodeChlid = new TreeNode(chlid["yhm"].ToString() + " (" + chlid["yhh"].ToString() + ")<span style='display:none;'>:" + value + "</span>", chlid["id"].ToString());
nodeChlid.SelectAction = TreeNodeSelectAction.None;
nodeChlid.Expanded = false;
node1.ChildNodes.Add(nodeChlid);
}
}
}
}
using (var row = JZQDAB_BLL.Get_JZQ(t.id.ToString()))
{
while (row.Read())
{
var value = row["yhh"].ToString() + ":" + row["yhm"].ToString() + ":" + row["azdz"].ToString() + ":"
+ row["zzxh"].ToString() + ":" + row["cldh"].ToString() + ":" + row["txsl"].ToString() + ":"
+ row["txdk"].ToString() + ":" + row["txlx"].ToString() + ":" + row["txdz"].ToString() + ":"
+ row["txmm"].ToString() + ":" + row["flgs"].ToString() + ":" + row["zsgs"].ToString() + ":"
+ row["xsgs"].ToString() + "::" + row["yhdlh"].ToString() + ":" + row["yhxlh"].ToString()
+ ":" + t.qy + ":" + t.dz;
var node1 = new TreeNode(row["yhm"].ToString() + " (" + row["yhh"].ToString() + ")<span style='display:none;'>:" + value + "</span>", row["id"].ToString());
node1.SelectAction = TreeNodeSelectAction.None;
nodes.ChildNodes.Add(node1);
}
}
}
this.TreeView1.Dispose();
}