【问题标题】:Treeview in Updatepanels in ASP2ASP2 更新面板中的树视图
【发布时间】:2010-02-12 09:59:06
【问题描述】:

我在 Updatepanel 中展开/折叠 Treeview 控件时遇到问题,如果放置在 Updatepanel 之外会导致奇怪的行为和功能正常。

我发现 updatePanels 不支持 TreeViews,所以我的问题是:

  • 有什么解决方法可以避免完全回发,同时保持展开/折叠功能以及更新另一个控件的 TreeNode_clicks?
  • 另外,为什么有些人在 Updatepanel 中使用 TreeView 似乎很成功?这只是一个 ASP2 问题吗?

【问题讨论】:

    标签: asp.net ajax treeview updatepanel


    【解决方案1】:

    这是在更新面板下加载树视图 javascript 失败。我尝试在下面的要点中添加一些解释和选项。

    • 如果控件立即可见,则该控件将在更新面板中工作。
    • 如果控件在回发后可见,则该控件将无法在更新面板中工作。
    • 如果您禁用客户端 javascript,该控件将在更新面板中工作,但每次单击加号/减号时都会导致回发。

    希望有帮助

    【讨论】:

    • 控件从一开始就可见。我真的不明白“如果在回发后可见,控件将不起作用”?它总是可见的。你如何禁用客户端javascript?您是否尝试过使用 ASP2,因为我相信 ASP3 可以正常工作 - 感谢您的回复
    • 如果控件从一开始就可见,那么它应该可以工作。我认为有一个名为“EnableClientScript”的属性,当设置为 false 时,将禁用 javascript 并使控件依赖回发。
    • 成功了!没有意义,但谢谢!理想情况下,我不希望在 + 或 - 上单击且仅在 selectedNodeChanged 上进行回发,但现在可以这样做。
    【解决方案2】:

    .Net 2.0 中的 TreeView 不需要在展开/折叠时回发。

    您是否尝试在要使用触发器更新的控件周围放置一个 UpdatePanel

    【讨论】:

    • 是的,试过但没用。回发和更新似乎工作正常。将树视图放置在没有更新面板的情况下可以正常工作的更新面板上时,这只是一种奇怪的扩展行为。
    【解决方案3】:

    正如 Microsoft 所声明的,treeview 与 UpdatePanel 不兼容。所以你遇到了所有问题。在我的一个项目中,我已经将其管理到了一个完全可以接受的水平。您可以参考以下相同的帖子:http://www.geekays.net/post/Using-TreeView-inside-AJAX-UpdatePanel.aspxhttp://www.geekays.net/post/TreeView-control-postbacks-on-check-and-uncheck-of-the-nodes-Checkbox.aspx

    如果有帮助,请告诉我。

    【讨论】:

    • 感谢您的回复,信息很有用,但似乎如果树视图可见且 EnableClientScript 为 false,则回发在更新面板上可以正常工作。
    猜你喜欢
    • 1970-01-01
    • 2010-09-30
    • 1970-01-01
    • 2012-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-22
    相关资源
    最近更新 更多