zoukankan
html css js c++ java
TreeView状态保存
很多时候会看到,使用Treeview的时候展开这个节点,到另外一个页面的时候Treeview的状态又恢复了,下面就是解决方法咯
新建一个类
public
class
TreeViewState
...
{
public
void
SaveTreeView(TreeView treeView,
string
key)
...
{
List
<
bool
?>
list
=
new
List
<
bool
?>
();
SaveTreeViewExpandedState(treeView.Nodes, list);
HttpContext.Current.Session[key
+
treeView.ID]
=
list;
}
private
void
SaveTreeViewExpandedState(TreeNodeCollection nodes, List
<
bool
?>
list)
...
{
foreach
(TreeNode node
in
nodes)
...
{
list.Add(node.Expanded);
if
(node.ChildNodes.Count
>
0
)
...
{
SaveTreeViewExpandedState(node.ChildNodes, list);
}
}
}
private
int
RestoreTreeViewIndex;
public
void
RestoreTreeView(TreeView treeView,
string
key)
...
{
RestoreTreeViewIndex
=
0
;
RestoreTreeViewExpandedState(treeView.Nodes,
(List
<
bool
?>
)HttpContext.Current.Session[key
+
treeView.ID]
??
new
List
<
bool
?>
());
}
private
void
RestoreTreeViewExpandedState(TreeNodeCollection nodes, List
<
bool
?>
list)
...
{
foreach
(TreeNode node
in
nodes)
...
{
if
(RestoreTreeViewIndex
>=
list.Count)
return
;
node.Expanded
=
list[RestoreTreeViewIndex
++
];
if
(node.ChildNodes.Count
>
0
)
...
{
RestoreTreeViewExpandedState(node.ChildNodes, list);
}
}
}
}
在页面代码,TreeView的控件里事件里写
protected
void
TreeViewMain_Unload(
object
sender, EventArgs e)
...
{
//
save the state of all nodes.
new
TreeViewState().SaveTreeView(TreeViewMain,
this
.GetType().ToString());
}
查看全文
相关阅读:
(转)swc使用
(转)AS3中的反射相关
AS获取url参数
(转)深入理解Flash Player的安全域(Security Domains)
(转)html<embed>标签和url向Flash传flashvars值
(转)ApplicationDomain
灰度发布
(转)flex中使用swc实现更好的界面代码分离
(转)深入理解Flash Player的应用程序域(Application Domains)
嵌入式系统可执行文件格式
原文地址:https://www.cnblogs.com/javabin/p/1583003.html
最新文章
ASP.NET MVC+LINQ开发一个图书销售站点(8):表单验证
RUP:切实可行的流程
ASP.NET MVC+LINQ开发一个图书销售站点
AutoCAD.NET API 最新(2012)教程下载及在线视频教程DevTV 第5讲 Dictionaries, Containers, Type Identification, Casting
Autodesk Infrastructure Map Server 2012 – iViewer for iPad, iPhone, Andriod
AutoCAD.NET API 最新(2012)教程下载及在线视频教程DevTV 第8讲 用户界面
AutoCAD.NET API 最新(2012)教程下载及在线视频教程DevTV 第6讲 InputPoint Monitor
AutoCAD WS API发布【转】
Autodesk MapGuide Enterprise 2011 Update 2 for Windows Released!
Autodesk MapGuide Enterprise 2012开发技术入门培训视频录像下载
热门文章
Autodesk API培训课程开始报名
AutoCAD.NET API 最新(2012)教程下载及在线视频教程DevTV 第7讲 Jigs
AutoCAD.NET API 最新(2012)教程下载及在线视频教程DevTV 第4讲 数据库事件和AutoCAD用户界面Palette
Map 3D 2012定制和应用程序开发Webcast将于明天(6月23号)进行
Civil 3D 2012基于.net 的曲面API Webcast 7月8号下午进行
AutoCAD.NET API 最新(2012)教程下载及在线视频教程DevTV 第3讲 数据库基础
Map 3D 2012定制和应用程序开发Webcast视频录像下载
AutoCAD Map 3D 2011 Update 2 Released!
了解一下Mysql的刷脏以及如何合理刷脏
(转)ExternalInterface问题
Copyright © 2011-2022 走看看
很多时候会看到,使用Treeview的时候展开这个节点,到另外一个页面的时候Treeview的状态又恢复了,下面就是解决方法咯
新建一个类
在页面代码,TreeView的控件里事件里写