2

在 VS 2010 中,ASP.Net Web 应用程序模板创建了一个包含两个内容页面的母版页:主页和关于。当您导航到新选项卡时,状态会丢失。作为一名 Windows 开发人员,我正在努力解决如何将页面返回到用户离开它们的状态。

我的客户选项卡允许用户过滤客户并从 AspxGridView 中选择一个。选定的客户 ID 将用于其他页面(选项卡)以显示相关的客户数据:联系人、发票、任务等。我想让用户在他/她离开过滤器时返回到客户选项卡,排序等仍然机智。

我知道 cookie、查询字符串、查看状态和会话变量。但是,当用户离开时,我不知道如何从 DevExpress AspxGridView 捕获用户的过滤器和排序信息,我需要重新构建网格状态。

我是否应该将应用程序重新设计为一个包含每个选项卡的大页面?这将有助于维护视图状态,但它可能会失控。我的公司希望这个应用程序成为一个成熟的 CRM,我不想制造维护噩梦。

我正在寻找有关如何最好地维护 ASP.Net Web 表单应用程序中的选项卡/页面状态的建议,该应用程序可能会随着时间的推移而变得非常大。

4

2 回答 2

1

但是,当用户离开时,我不知道如何从 DevExpress AspxGridView 捕获用户的过滤器和排序信息,我需要重新构建网格状态。

可以使用 ASPxGridView 客户端布局数据。DX ASP.NET 网格控件为此提供了特殊的基础结构:

ASPxGridView > 主要功能 > 保存和恢复布局:

http://help.devexpress.com/#AspNet/CustomDocument4342

E2534 - 如何保存/加载 ASPxGridView 的 ClientLayout 数据并从 ASPxListBox 中选择它们:

http://www.devexpress.com/Support/Center/e/E2534.aspx

于 2011-12-14T20:34:34.750 回答
0

与 WinForms 不同,Web 是无状态的。ASP.NET 为您提供了一些选项来维护页面和回发之间的状态。一个很好的起点是 MSDN。

ASP.NET 状态管理概述

如何:在 ASP.NET 网页之间传递值

我不熟悉 AspxGridView,但大多数服务器控件使用 ViewState 来维护回发之间的状态。您可以首先确认在控件页面和 web.config 上启用了 ViewState。

于 2011-12-14T19:53:04.273 回答