收录日期:2018/10/23 18:17:21 时间:2016/05/20 18:28:12 标签:ASP.NET
master/detail页面,master页面中的Datagrid中有一连接至Detail页面,当从Detail页面操作后返回到Master页面,Master页面怎样保持以前状态.如它的搜索文本,页次等等,不能用history.back(),Detail操作后需刷新Master页面,解决后马上结贴.
帮你up
你要刷新Master页面,那么就保存不了以前的信息了,你还是操作后就重新查寻一下好了
需要保存原查询条件
刷新后就保存不住以前的信息了,重新查询。
需要保存原查询条件

还有页次,滚动条位置等
可以保存到SESSION,也可以用变量传递。
谢谢各位了,难道没其它方法了吗?那你们是怎样做的啊!这是很常用的功能啊!帮忙啊
能不能给点具体的代码,谢谢了!很急啊!分不给可以再加啊!
asp.net的每一个服务器控件都有一个enableviewstates属性把它设为true,返回页面它会保持原有输入
我这个不是在同一页啊!从另一个页面返回本页,用Enableviewstates属性没用啊
从detail到master页面的语句中加 一句
   Response.Redirect("master.aspx?backde=" + Request.UrlReferrer.ToString());
在master返回detail的事件中写入
   Response.Redirect(Request.QueryString["backde"]);
TO Oceanson(洋之光)
  先谢谢了,我现在用的就是这种方法,可是返回后不能保存Search文本框的数据,还有Grid中的页次等啊!还有办法吗?
办法是有的 就是在url重定位的时候再加两个参数,一个保存文本框数据,一个保存Grid页数
 在detail的Pagelode中加一个判断  看是否是master返回的  你可以判断返回的参数是否为null来确定 如果是重master返回的 就给对应的textbox赋值  和根据页数设定Datagrid的currentpageindex 重新帮定Datagrid
你就不能在新窗口中打开Detail吗,干啥非要在一个窗口内呢。

或者做一个框架,上面显示Master,下面显示Detail。
Oceanson(洋之光)

  在Datagrid中的超连接字段,我要怎样把DataGrid的当前页值和搜索文本框的值传过去啊!
啊 还没弄好呀     有很多方法可以在网页之间传递数据   使用带参数的重定向是一个比较传统的方法     具体如下
detail到master页面的语句
Response.Redirect("master.aspx?backde=" + Request.UrlReferrer.ToString() 
+ "&Text=" + TextBox_seach.text + "&DIndex=" + DataGrid1.SelectItemIndex.ToString());

master返回detail的事件中写入
Response.Redirect(Request.QueryString["backde"] + "&Text=" + Request.QueryString["Text"] + "&DIndex=" + Request.QueryString["DIndex"]);

在detail的pagelode的事件中判断
if (Request.QueryString["Text"] == null)
{
   //做你原来的pagelode事件
}
else
{
TextBox_seach.text = Request.QueryString["Text"];
BindGrid();//你的绑定datagrid的函数过程
DataGrid1.CurrentPageIndex = Request.QueryString["DIndex"];
BindGrid();//和翻页一样需要重新帮定
//做你原来的pagelode事件
}

其他传递和保存参数的方法还有session、cookie等 网上有很多资源的:)
To:Oceanson(洋之光)

  谢谢你耐心的指教,我现在试试,我也试了用Session等保存参数,但我的程序不止一个页面带搜索功能,如果用Session,当用户到另一页面时,本来搜索里面是没有的,也变成有了,因为我每个页面都是相同的标签啊!如TXTSearch,如果你的方法可行,我一定马上给加分.
To:Oceanson(洋之光)
  对了,我是在Datagrid中的超连接传参数,按你的方法不行啊!DataNavigateUrlFormatString="DG_view.aspx?No={0}后面怎样加你的参数啊!帮帮我
有点不明白你的意思了   你是想一页 一页 又 一页的返回 每一页都保存原来的状态吗?
程序是人编的 虽然感觉不太值得在这上面花很多代码和精力 session和application都是
可序列化object对象。你可以用数组 也可以用哈系表   记录你从开始进入到退出所有的
页面信息  通过标页面标号 在表中查找你要的那一页信息 读入页面   具体是比较烦琐的
很抱歉 我有新的任务了 没时间帮你写一遍  
》》》》DataNavigateUrlFormatString="DG_view.aspx?No={0}后面怎样加你的参数
序列占位符{0}我没在传送时用过   用变量可以传  想我上面的写法一样  两个以上参数
之间用&
你可以使用Session传值,在返回master页的时候,付值给搜索文本框,再清除Session的值,就可以啦!页次也一样啊!试试吧!

帮忙,如何写SQL语句,求出库总记录数? Data控件如何连接有密码的Access2000数据库,AccessXP呢? 如何用IHTMLDOCUMNET2获得html文件中的鼠标选定的内容? (sunyuzhe) 大虾,给兄弟配台机子吧! 用Delphi的操作ms-sql server(\'select * from jt_name where jt_low=\'+combo1.text+\'\')出错无此列名? !!!急!!!没有数据库的文件备份,怎样才能把误删的文件找回???高分求救! 面临职业选择前景, 犹豫中, 请大家给把个脉 修改.dfm文件后怎么保存或编译修改?? 面临职业选择前景, 犹豫中, 请大家给把个脉 一个关于\"关闭按钮\"位置的问题 关于folder.htt病毒的问题 中印精英的比较 win98下登陆密码的加密方法谁知道,或是这方面的资料也可以 点一个按钮跳出资源管理器界面!然后选择,在一个TEXT框中显示文件路径! 简单问题,请高手帮忙指点 Help!!!那位大虾能告诉我怎么才能往类模块的public方法传送自定义数据结构!!我编得太郁闷了! ***菜鸟求救***如何在连接远程和本地的数据库实现更新? 为什么我在SDK编程中这样用_beginthread没问题,在MFC里就出错? 高程考试下午的有更好的辅教材吗? CB6如何读取NOTES数据库 梅捷主板6BA+III的CPU最高支持是多少? vb安装 高程考试的成绩什么时候才可以知道? 我想拿SUN JAVAR认证 下军棋连输五局,气死我了!散分。 关于数据窗口中编辑sql的问题??各位高手指点! pengdali(大力) 请进,请教临时表的事情。 我想做一个给文件夹加密的软件,请问怎样实现?原理是什么? 如何在OEM中察看表的内容? 中印知识分子比较