PB刷新按钮问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PB刷新按钮问题相关的知识,希望对你有一定的参考价值。
做查询窗口时,刷新按钮不起作用:
查询脚本:
string lookforcondition
lookforcondition='bookid'+'='+"'"+sle_1.text+"'"
if sle_1.text='' then
messagebox('提示','无记录!')
else
dw_1.setfilter(lookforcondition)
dw_1.filter()
return
end if
刷新及OPEN事件脚本为:
dw_1.settransobject(sqlca)
dw_1.retrieve()
但是每次查询后,按刷新按钮都无法恢复至刚打开窗口时的状态,求高手解决
而你想要恢复到open的状态,就是显示全部数据,那么需要清空过滤条件。
也就是说,你在刷新的时候,要清空过滤条件。
刷新按钮增加一行代码,清空过滤条件。
dw_1.settransobject(sqlca) 刷新中这行不用写,因为你没断开过。
刷新这么写就行
dw_1.setfilter('')
dw_1.filter()
dw_1.retrieve() 参考技术A 当然有问题喽。
因为代码执行完,FLAG 就从内存中消失了,再按一下,FLAG重新声明,默认又变成0了。除非你把这个FLAG声明在实例变量区,不要声明在这里。
参考技术B 在刷新及OPEN事件中加入dw_1.setfilter('')
页面刷新后保留值
【中文标题】页面刷新后保留值【英文标题】:retain value after page refresh 【发布时间】:2011-08-23 02:47:04 【问题描述】:我在 c# 中使用按钮控件(“验证按钮”)。 我在我的项目中定义了一些全局变量。 当我单击按钮时,会发生一些表单验证,并且另一个按钮(“保存按钮”)变得可见。 问题是当我单击验证按钮时,当前页面刷新并且全局变量不包含值。它显示为空。 即使在页面刷新后,我如何维护全局变量中的值。
【问题讨论】:
【参考方案1】:这是 asp.net,对吗?
将此值存储在会话 Session["MyVariable"] = value
中并从会话 value = Session["MyVaraible"]
中读取它
还有其他选择,ViewState、Application 甚至使用静态变量,但使用 session 对您来说足够简单。
【讨论】:
【参考方案2】:不清楚全局变量是什么意思。假设它的页面级别(实例)变量,你最好的选择是使用视图状态。定义视图状态支持的属性,例如
private int MyVar
get
var value = ViewState["MyVar"];
return null != value ? (int)value: 0;
set
ViewState["MyVar"] = value;
【讨论】:
ViewState 在页面刷新时被删除,因此不能用于此目的。 SessionState 也不能使用,因为在同一个浏览器中打开的所有页面都会使用同一个 Session 内的运行,所以也不能使用。 :-\ @dmitry_bond,OP 正在讨论按钮单击时的页面刷新(回发场景),因此视图状态的相关性。【参考方案3】:我认为你需要使用会话状态http://msdn.microsoft.com/en-us/library/87069683(v=vs.80).aspx
【讨论】:
【参考方案4】:第二种方法:使用不带 PostBack 的按钮的客户端事件(将按钮 AutoPostback 属性设置为 false)来验证您的表单。之后使用第二个按钮的服务器处理程序发布表单字段值...
【讨论】:
【参考方案5】:我认为您的意思是:您声明了一些变量 globally
,但通常这些变量会在页面循环结束时丢失它们的值。
如果您想在回发后维护变量值,您可以使用static variables
,但注意它们将在所有用户之间共享。使用session variables
是不错的选择。
【讨论】:
以上是关于PB刷新按钮问题的主要内容,如果未能解决你的问题,请参考以下文章