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());
}
查看全文
相关阅读:
HDU 4814 Golden Radio Base
我对Swift的几点疑问
【UTR #1】ydc的大树
jsp中的隐含9对象
动作元素
指令元素
JSP语法
设计模式六大原则(6):开闭原则
设计模式六大原则(5):迪米特法则
设计模式六大原则(4):接口隔离原则
原文地址:https://www.cnblogs.com/javabin/p/1583003.html
最新文章
四大伪类,css鼠标样式设置,reset操作,静止对文本操作
CSS高级选择器
移动端城市定位,城市区域代码adcode
48小时开发实践:如何开发一款可实时视频的智能小车
深入解析丨母婴App如何迅速收割2W新用户?
我的小白同事接触白鹭引擎4天,成功做了一款足球小游戏
js随手笔记-------理解JavaScript碰撞检测算法核心简单实现原理
如何形成一个完整的HTML对象
编写一个头像裁剪组件(一)
基于HTML5 的互联网+地铁行业新模式
热门文章
深度解析混合开发技术成熟度曲线
有关表单autocomplete = "off" 失效问题解决方案
使用Swift开发iOS项目、UI创建、方法调用
给js设定一个统一的入口
svn提交异常file is scheduled for addition, but is missing
IOS 文件夹结构
Bellman Ford 最短路径算法
两款高性能并行计算引擎Storm和Spark比較
UIButton的selected设为TRUE时在按下时显示自己定义的背景图
Codeforces 126D Fibonacci Sums 求n由随意的Sum(fib)的方法数 dp
Copyright © 2011-2022 走看看
很多时候会看到,使用Treeview的时候展开这个节点,到另外一个页面的时候Treeview的状态又恢复了,下面就是解决方法咯
新建一个类
在页面代码,TreeView的控件里事件里写