TreeView操作
来源:互联网 发布:淘宝抢购秒杀器 编辑:程序博客网 时间:2024/04/30 06:33
TreeView 的服务器端操作:从xml文件中读取数据生成tree
private void InitPage()
...{
InitTreeView();
//tvMainMenu.Attributes.Add("background-color", "#ffffff");
tvMainMenu.Attributes.Add("DefaultStyle", "Background-Color:#ffffff;Cursor:Hand;color:#000000;font-size:12.8px;");
tvMainMenu.Attributes.Add("SelectedStyle", "Background-Color:#ffffff;Cursor:Hand;color:#000000;font-size:12.8px;");
}
private void InitTreeView()
...{
XmlDocument doc = Config.Menu;
XmlElement ele = doc.DocumentElement;
for(int i=0; i<ele.ChildNodes.Count; i++)
...{
XmlNode xmlNode = ele.ChildNodes[i];
TreeNode treeNode = new TreeNode();
treeNode.Text = xmlNode.Attributes["Text"].Value;
tvMainMenu.Nodes.Add(treeNode);
AddXmlNode(xmlNode, treeNode);
}
}
private void AddXmlNode(XmlNode xmlNode, TreeNode treeNode)
...{
for(int i=0; i<xmlNode.ChildNodes.Count; i++)
...{
TreeNode temp = new TreeNode();
temp.Text = xmlNode.ChildNodes[i].Attributes["Text"].Value;
string right = xmlNode.ChildNodes[i].Attributes["Right"].Value;
string url = xmlNode.ChildNodes[i].Attributes["Value"].Value;
temp.NavigateUrl = IsAuthorized(right) ? "javascript:onNodeClicked('" + url + "');" : "javascript:onUnauthorized();";
treeNode.Nodes.Add(temp);
AddXmlNode(xmlNode.ChildNodes[i], temp);
}
}
...{
InitTreeView();
//tvMainMenu.Attributes.Add("background-color", "#ffffff");
tvMainMenu.Attributes.Add("DefaultStyle", "Background-Color:#ffffff;Cursor:Hand;color:#000000;font-size:12.8px;");
tvMainMenu.Attributes.Add("SelectedStyle", "Background-Color:#ffffff;Cursor:Hand;color:#000000;font-size:12.8px;");
}
private void InitTreeView()
...{
XmlDocument doc = Config.Menu;
XmlElement ele = doc.DocumentElement;
for(int i=0; i<ele.ChildNodes.Count; i++)
...{
XmlNode xmlNode = ele.ChildNodes[i];
TreeNode treeNode = new TreeNode();
treeNode.Text = xmlNode.Attributes["Text"].Value;
tvMainMenu.Nodes.Add(treeNode);
AddXmlNode(xmlNode, treeNode);
}
}
private void AddXmlNode(XmlNode xmlNode, TreeNode treeNode)
...{
for(int i=0; i<xmlNode.ChildNodes.Count; i++)
...{
TreeNode temp = new TreeNode();
temp.Text = xmlNode.ChildNodes[i].Attributes["Text"].Value;
string right = xmlNode.ChildNodes[i].Attributes["Right"].Value;
string url = xmlNode.ChildNodes[i].Attributes["Value"].Value;
temp.NavigateUrl = IsAuthorized(right) ? "javascript:onNodeClicked('" + url + "');" : "javascript:onUnauthorized();";
treeNode.Nodes.Add(temp);
AddXmlNode(xmlNode.ChildNodes[i], temp);
}
}
TreeView的客户端操作:实现同级结点的互斥操作
function initTree()
...{
var tree = document.all["tvMainMenu"];
tree.attachEvent("onexpand", collapseSameLevelNode);
}
function collapseSameLevelNode()
...{
var index = this.tvMainMenu.clickedNodeIndex;
if(1 == getNodeLevel(index))
...{
collapseFirstLevel(index);
}
else
...{
collapseSecondLevel(index);
}
}
function collapseSecondLevel(index)
...{
var nodes = new Array();
var first = getFirstLevelIndex(index);
var second = getSecondLevelIndex(index);
nodes = this.tvMainMenu.getTreeNode("0" + first).getChildren();
for(i=0; i<nodes.length; i++)
...{
if(i != second)
...{
this.tvMainMenu.getTreeNode(first + "." + i).setAttribute("expanded", "false");
}
}
}
function collapseFirstLevel(index)
...{
var temp = index;
var nodes = new Array();
nodes = this.tvMainMenu.getChildren();
for(i=0;i<nodes.length;i++)
...{
if(i!=temp)
...{
this.tvMainMenu.getTreeNode("0" + i).setAttribute('expanded','false');
}
}
}
function getNodeLevel(index)
...{
return index.split('.').length;
}
function getFirstLevelIndex(index)
...{
return index.substring(0, index.indexOf('.'));
}
function getSecondLevelIndex(index)
...{
return index.substring(index.lastIndexOf('.') + 1);
}
...{
var tree = document.all["tvMainMenu"];
tree.attachEvent("onexpand", collapseSameLevelNode);
}
function collapseSameLevelNode()
...{
var index = this.tvMainMenu.clickedNodeIndex;
if(1 == getNodeLevel(index))
...{
collapseFirstLevel(index);
}
else
...{
collapseSecondLevel(index);
}
}
function collapseSecondLevel(index)
...{
var nodes = new Array();
var first = getFirstLevelIndex(index);
var second = getSecondLevelIndex(index);
nodes = this.tvMainMenu.getTreeNode("0" + first).getChildren();
for(i=0; i<nodes.length; i++)
...{
if(i != second)
...{
this.tvMainMenu.getTreeNode(first + "." + i).setAttribute("expanded", "false");
}
}
}
function collapseFirstLevel(index)
...{
var temp = index;
var nodes = new Array();
nodes = this.tvMainMenu.getChildren();
for(i=0;i<nodes.length;i++)
...{
if(i!=temp)
...{
this.tvMainMenu.getTreeNode("0" + i).setAttribute('expanded','false');
}
}
}
function getNodeLevel(index)
...{
return index.split('.').length;
}
function getFirstLevelIndex(index)
...{
return index.substring(0, index.indexOf('.'));
}
function getSecondLevelIndex(index)
...{
return index.substring(index.lastIndexOf('.') + 1);
}
- TreeView操作
- TreeView 操作
- Treeview 操作
- TreeView的操作
- TreeView的操作
- TreeView的有关操作
- TreeView的有关操作
- TreeView的有关操作
- TreeView的操作
- TreeView常用操作
- treeview操作集合
- TreeView的简单操作
- TreeView控件常用操作
- javascript 操作treeview
- javascript 操作treeview
- TreeView的基本操作
- js操作TreeView
- 操作数据库&TreeView
- 将数据表相关字段绑定到DropDownList控件
- 数据从文本文件写入数据库表的捷径
- Open Dynamics Engine(ODE)简介
- asp.net常用的javascript经典例子
- Oracle商务智能套件企业版
- TreeView操作
- asp class
- 取得数据库服务器的系统日期转为字符串格式,只取日期部分
- oracle数据库导出程序
- 自动生成16位的单据编号
- ODE v0.5 用户指南
- 双喜临门,发帖庆祝
- ASP.NET AJAX 展望
- 一堆信息抽取的资料文档(转载自:fullsearch.com)