【问题标题】:Silverlight - Dynamically creating controls without any postbacksSilverlight - 动态创建控件而无需任何回发
【发布时间】:2010-09-27 12:43:07
【问题描述】:

我能否在 Silverlight 中动态创建控件而无需回发到服务器(即使是异步的)。 silverlight 拖放是否需要回发?

我问这个是因为我有一个 asp.net 应用程序,我可以在其中动态创建/删除许多控件。因此,在回发后,我收到了视图状态错误,指出控制树与视图状态树不匹配。

我可以在 Silverlight 中避免此类问题吗?

【问题讨论】:

    标签: c# asp.net silverlight dynamic


    【解决方案1】:

    silverlight 控件/应用程序中所做的一切都发生在客户端上。如果有任何异步发生,Web 服务调用。这就是使用 silverlight 的优点

    【讨论】:

      【解决方案2】:

      是的,您可以向页面动态添加控件,而无需往返服务器。

      拖放也在客户端执行。

      Silverlight 更像是一个桌面应用程序,它与服务器对话只是为了获取/保存数据。

      在 Silverlight 中动态添加控件就像新建适当的控件类并将其插入渲染树(例如,通过将其添加到父控件)一样简单。

      【讨论】:

        【解决方案3】:

        这是一个示例:http://asd.murven.com/blog/post/2009/10/16/Silverlight-Adding-controls-dynamically.aspx

        但是,我不建议仅仅为了消除此错误而切换到 Silverlight。仅当您真正需要类似客户端的应用程序而不是真正的 Web 应用程序时。 ASP.NET 也适用于动态创建控件。请记住在每次回发期间初始化服务器上​​的控件。如果这没有帮助,我建议您使用一些代码提交您的问题的描述,以帮助我们与您一起解决。

        兄弟。莫腾

        【讨论】:

          【解决方案4】:

          Silverlight 中发生的绝大多数事情不涉及回发。事实上,我想说 Silverlight 代表了一种完全不同的心态。每当有来自 Silverlight 的回发时,它几乎总是异步的,并且没有服务器需要担心的“视图状态”。在我看来,它让 ASP.NET 在编写 Web 应用程序时看起来像个笑话。

          【讨论】:

            猜你喜欢
            • 2011-05-12
            • 1970-01-01
            • 2010-10-27
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2013-02-26
            • 2018-09-28
            • 2013-07-09
            相关资源
            最近更新 更多