可以在asp.net2.0里设置treeview,使它点击节点时不刷新,既不回发吗???? 可以在asp.net2.0里设置treeview,使它点击节点时不刷新,既不回发吗????1。1里的树形可以设置,2。0的在哪里设置????? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 TreeView 2.0 若设定了 Node.NavigateUrl 属性,则 SelectedNodeChanged 事件将不会被激活调用 想1。1版本时的treeview控件一样,只是选中,不激活SelectedNodeChanged 事件,可以吗? 不设定 Node.NavigateUrl 属性,你点击节点的时候就是选定状态勒 怎么没人看题回答的????只是选中,不激活SelectedNodeChanged 事件,可以吗? Node.NavigateUrl = "javascript:SelectNode('nodeId')", 利用SelectNode将nodeId保存到隐藏域,然后再后台处理 /// <summary> /// 取得应用的全部虚拟机构 /// </summary> /// <param name="appId"></param> /// <returns></returns> public static TreeNode GetAllVOrgByApplicationId(string appId) { lock (CacheKey.VORG_PREFIX) { TreeNode trNode = (TreeNode)CacheManager.Get(CACHEPRE, CacheKey.VORG_PREFIX, appId); if (trNode == null) { VirtualOrganizationSet ds = GetByCondition("[OrgId] = [ParentId] and ApplicationId = '" + appId + "'"); trNode = new TreeNode(); if (ds.Tables[0].Rows.Count > 0) { DataRow dr = ds.Tables[0].Rows[0]; trNode.Text = dr["OrgName"].ToString().Trim(); trNode.Value = dr["OrgId"].ToString().Trim(); int i = 0; System.Web.UI.Page encode = new System.Web.UI.Page(); trNode.NavigateUrl = "javascript:SelectNode('" + trNode.Value + "," + dr["OrgName"].ToString() + "," + i + "')"; RecursiveTree(trNode, ref i); } CacheManager.AddSliding(CACHEPRE, CacheKey.VORG_PREFIX, appId, trNode); } return trNode; } } /// <summary> /// 递归得到下级虚拟机构 /// </summary> /// <param name="trVirOrg"></param> private static void RecursiveTree(TreeNode parentNode, ref int i) { DataSet ds = GetByCondition("OrgId <> ParentId AND ParentId='" + parentNode.Value + "' AND Status = 3"); TreeNode treeNode = null; foreach (DataRow drItem in ds.Tables[0].Rows) { treeNode = new TreeNode(); treeNode.Text = drItem["OrgName"].ToString().Trim(); treeNode.Value = drItem["OrgId"].ToString().Trim(); System.Web.UI.Page encode = new System.Web.UI.Page(); i++; treeNode.NavigateUrl = "javascript:SelectNode('" + treeNode.Value + "," + drItem["OrgName"].ToString().Trim() + "," + i + "');"; RecursiveTree(treeNode, ref i); parentNode.ChildNodes.Add(treeNode); } } 设置该节点的NavigateUrl = "http://#"; 想要真正的无刷新,最好还是不设定 Node.NavigateUrl 属性还有尽量使用框架结构。 可是用了框架结构没法直接通过url链接页面,直接链接的页面没有框架的其它内容 向数据库添加带有html和特殊字符的数据出错 在vs2008中,ArrayList的方法没有了,??? 急急急!高分快来抢,求分页代码? 水晶报表工具栏的使用问题 VS 2003中DataAdapter同时执行多条查询? asp.net 服务器端动态输出页面到客户端 怎样在DataGrid中添加连接? 为什么我的配文件不能访问?急,在线等 配置文件问题? 帮忙看一下这段为何不运行 主页面重新加载问题 Cookies传汉字的时候为什么会出现乱码
/// 取得应用的全部虚拟机构
/// </summary>
/// <param name="appId"></param>
/// <returns></returns>
public static TreeNode GetAllVOrgByApplicationId(string appId)
{
lock (CacheKey.VORG_PREFIX)
{
TreeNode trNode = (TreeNode)CacheManager.Get(CACHEPRE, CacheKey.VORG_PREFIX, appId);
if (trNode == null)
{
VirtualOrganizationSet ds = GetByCondition("[OrgId] = [ParentId] and ApplicationId = '" + appId + "'");
trNode = new TreeNode();
if (ds.Tables[0].Rows.Count > 0)
{
DataRow dr = ds.Tables[0].Rows[0];
trNode.Text = dr["OrgName"].ToString().Trim();
trNode.Value = dr["OrgId"].ToString().Trim();
int i = 0;
System.Web.UI.Page encode = new System.Web.UI.Page();
trNode.NavigateUrl = "javascript:SelectNode('" + trNode.Value + "," + dr["OrgName"].ToString() + "," + i + "')";
RecursiveTree(trNode, ref i);
}
CacheManager.AddSliding(CACHEPRE, CacheKey.VORG_PREFIX, appId, trNode);
}
return trNode;
}
} /// <summary>
/// 递归得到下级虚拟机构
/// </summary>
/// <param name="trVirOrg"></param>
private static void RecursiveTree(TreeNode parentNode, ref int i)
{
DataSet ds = GetByCondition("OrgId <> ParentId AND ParentId='" + parentNode.Value + "' AND Status = 3");
TreeNode treeNode = null;
foreach (DataRow drItem in ds.Tables[0].Rows)
{
treeNode = new TreeNode();
treeNode.Text = drItem["OrgName"].ToString().Trim();
treeNode.Value = drItem["OrgId"].ToString().Trim();
System.Web.UI.Page encode = new System.Web.UI.Page();
i++;
treeNode.NavigateUrl = "javascript:SelectNode('" + treeNode.Value + "," + drItem["OrgName"].ToString().Trim() + "," + i + "');";
RecursiveTree(treeNode, ref i);
parentNode.ChildNodes.Add(treeNode);
}
}
还有尽量使用框架结构。