读书人

编程活见鬼了页面中两个TreeView出现

发布时间: 2011-12-25 23:21:20 作者: rapoo

编程见鬼了,页面中两个TreeView出现数据绑定错乱
页面中用框架实现,分,左、中、右三部分,左侧有一个功能表的TreeView,中间则根据左侧的功能表中的一个部门信息打开企业的部门信息树,而这时在在这个部门信息树中的TreeNodeDataBound中的e.Node.DataItem中的数据竟然还是左侧功能表中的数据源,信息树中的数据源指定的保证正确,不知道是怎么回事,有哪位遇到过类似的问题吗,帮忙解决一下,谢啦

功能树数据源绑定
System.Xml.XmlDocument xmldoc = (new InterService.Menu()).GetMenu();
XmlDataSource dataSource = new XmlDataSource();
dataSource.Data = xmldoc.InnerXml;
MenuTreeView.DataSource = dataSource;
MenuTreeView.DataBind();

功能表数据绑定事件
System.Xml.XmlLinkedNode node = (System.Xml.XmlLinkedNode)e.Node.DataItem;

e.Node.ImageUrl = "~/Resource/Image/TreeImg/ " + node.Attributes[ "MenuIco "].Value;
e.Node.Target = node.Attributes[ "MenuTarget "].Value;
e.Node.ToolTip = node.Attributes[ "MenuHint "].Value;
if (node.Attributes[ "MenuUrl "].Value == "# ")
{
e.Node.SelectAction = TreeNodeSelectAction.Expand;
}
else
{
e.Node.NavigateUrl = node.Attributes[ "MenuUrl "].Value;

}


部门数据源绑定
System.Xml.XmlDocument doc = (new InterService.Department()).GetDeptTree();
XmlDataSource source = new XmlDataSource();
source.Data = doc.InnerXml;

dept_Tree.DataSource = source;
dept_Tree.DataBind();

部门数据绑定事件

System.Xml.XmlLinkedNode node = (System.Xml.XmlLinkedNode)e.Node.DataItem;

if (node.Attributes[ "DeptID "].Value == "0 ")
{
e.Node.ImageUrl = "~/Resource/Image/TreeImg/@chatroom[1].gif ";
if (unitUrl == " ")


{
e.Node.SelectAction = TreeNodeSelectAction.Expand;
}
else
{
e.Node.NavigateUrl = unitUrl;
}
}
else
{
e.Node.ImageUrl = "~/Recource/Image/TreeImg/comm[1].gif ";
if (deptUrl == " ")
{
e.Node.SelectAction = TreeNodeSelectAction.Expand;
}
else
{
e.Node.NavigateUrl = deptUrl + "?DeptID= " + node.Attributes[ "DeptID "].Value;
}
}

e.Node.Text = node.Name;
e.Node.Value = node.Attributes[ "DeptID "].Value;
if (target != " ")
{
e.Node.Target = target;
}

[解决办法]
没搞过,如果代码没问题的话,把TreeView控件删掉再试试
[解决办法]
System.Xml.XmlDocument xmldoc = (new InterService.Menu()).GetMenu();

System.Xml.XmlDocument doc = (new InterService.Department()).GetDeptTree();
可能返回的值一样

[解决办法]
up
[解决办法]
e.Node.DataItem

读书人网 >asp.net

热点推荐