0

我正在尝试在 ASP.NET (web) TreeView 控件中显示图像。基本上在数据库中有 1、2 和/或 3 打勾,并且所有检查的内容都应该导致适当的图像出现在树上的该节点旁边。这一切都有效,除了有回发我用过这个[http://www.codeproject.com/Articles/14031/Displaying-Multiple-Images-In-The-ASP-NET-TreeView],它工作正常,回发发生时除外。除了 +- 符号,我还使用 onselectednodechanged 方法,这会导致回发(这没关系,因为页面上同时发生了其他事情)。但是回发失去了它应该显示图像并且它们消失的事实。

我只能假设图像没有保存在视图状态中,因为当渲染树时它会打开到正确的点但忽略图像。

有没有更好的方法在树视图中显示图像?或者告诉视图状态记住图像的简单方法

------------------ 额外信息 ---------------

我刚刚观察了回发期间节点/子节点发生的情况。他们恢复到默认类型。当我创建它们时,它们会创建一个继承自 TreeNode 的 ImageTreeViewNode。回发后的节点都是 TreeNode 而不是 ImageTreeViewNode。有没有办法阻止他们恢复和丢失额外的信息?

4

1 回答 1

0

最后通过为我的树视图控件扩展 TreeView 类和新的“ImageTreeView”类来解决这个问题。

我更改了 createNode 方法以使用新的 ImageTreeNode 类(扩展的 TreeNode 类)

不起诉这是一个好还是坏的解决方案,但它似乎可以工作。

于 2013-09-28T15:05:05.227 回答