EnableViewState对textbox是不是没有作用啊??

pontus 2004-07-22 05:50:14
设置成 EnableViewState="False" 返回时textbox里输入的值是不是就不存在了?
...全文
287 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
webworm 2005-02-27
  • 打赏
  • 举报
回复
to twofish(toofoo):
我不同意你的看法,例如将textbox换成button,改其属性text,返回的就是默认值(!=改动值)
xiaozikuge 2004-07-23
  • 打赏
  • 举报
回复
学习
cat_hsfz 2004-07-23
  • 打赏
  • 举报
回复
twofish(toofoo) 的回复是最深入的最涉及本质的,呵呵……如果你做过服务器控件的开发就会知道。
twofish 2004-07-22
  • 打赏
  • 举报
回复
补充一下:
LoadPostData中如果返回的值和ViewState中的值不同的话,将把TextBox的值设置成返回的值
这就是你看到的结果
twofish 2004-07-22
  • 打赏
  • 举报
回复
可以这么说,回发的数据并不依赖于ViewState。回发的控件都实现了IPostBackDataHandler接口,该接口的LoadPostData方法中,会对返回的值和ViewState中的值进行判断,如果改变了的话,调用RaisePostDataChangedEvent方法触发相应的事件(对于TextBox来说就是TextChanged事件)。
如果你把EnableViewState="False",LoadPostData方法中返回的值始终会和文本框的默认值比较大小,也就是说,如果你在页面TextBox中改变值以后,每次你点按钮提交窗口都会触发TextBox的TextChanged事件
cat_hsfz 2004-07-22
  • 打赏
  • 举报
回复
我没有测试过禁用ViewState后TextBox的值是否还存在,不过如果存在也是正常的,因为PostBack的时候TextBox的值是被Post了的。

ViewState,对应ASP中的普通hidden,在设计时用于“需要跨页面生存周期保存且不需要显示”的值,但TextBox.Text则是被显示的值,从这个角度解释TextBox.Text与ViewState无关也是可以的。
liuvb 2004-07-22
  • 打赏
  • 举报
回复
重新生成解决方案,再试看还有没有。
wendua 2004-07-22
  • 打赏
  • 举报
回复
有可能在初始化的时候就付值了。
pontus 2004-07-22
  • 打赏
  • 举报
回复
但是确实是有啊
dotnet3000 2004-07-22
  • 打赏
  • 举报
回复
应该是没有了
pontus 2004-07-22
  • 打赏
  • 举报
回复
但是为什么还有值呢?
1man 2004-07-22
  • 打赏
  • 举报
回复
那当然了, EnableViewState="False" 后,跟服务器交互后值就不存在了

62,266

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧