您好、欢迎来到现金彩票网!
当前位置:ds视讯 > 服务器控件 >

在ASPNET网页中有三类控件

发布时间:2019-06-22 15:17 来源:未知 编辑:admin

  请问,第2类控件与第3类控件有何区别,什么情况下用第2类控件,如何用第2类控件,请举例。

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  HTML客户端事件是不会提交给服务端的,比说点击按钮,改变文字颜色等,只是针用户机器本身,是不会发送数据包给远程服务器的

  而 asp.net按钮点击之后,将会以post或者get形式发送给服务器,进行数据库操作等等,页面提交之后将会刷新。

  HTML 页面的扩展名是 .htm 或 .html。假如浏览器从服务器请求某张 HTML 页面,服务器不进行任何修改,就会把该页面发往浏览器。

  ASP.NET 页面的扩展名是 .aspx。如果浏览器请求某张 ASP.NET 页面,那么在把结果发回浏览器之前,服务器首先会处理页面中的可执行代码。

  最终浏览器还是会由html输出,服务器控件的页面访问速度比html的要慢的多。asp.net以页面一遍遍刷新html的形式,这就决定了他的机制很慢。而且越是追求对程序员友好、功能强大,那么其性能问题越是严重。

  一句话:服务器控件是封装好了html控件。 服务器控件通过ViewState维持状态,而HTML没有,如果没有交互的,可以直接用HTML控件。

  由于HTTP连接属于无状态的,每次页面请求都无法记录上次请求页面的信息。

  那么要保存上次请求页面上控件的值,也就是页面刷新后,填写的值不变,比方在textbox填了个‘a’,页面刷新后还是a,.NET框架为实现这种机制,于是就用到了viewstate视图状态来保存这些控件的值,

  那么将所有控件的值存在什么地方呢?可以运行程序,然后在页面中查看源文件,就可以看到一个input type=hidden name=__VIEWSTATE的标签,这个就是所谓的”视图“,它是经过服务器序列化过的,然后服务器接收后会反序列化这些隐藏域的值然后又从 新给这些控件赋值,从而页面刷新后还能记录上次请求时候的所有控件的值。服务器控件都会默认保存VIEWSTATE的 有个属性(EnableViewState)可以设置的, 设置为Flase就不保存了,页面刷新后,值也就没了,可以做个测试放个textbox设置EnableViewState为false,然后输入个 值,然后再用按钮去刷新页面,那么textbox会为空,因为没有视图状态记录到上次输入的值。

http://wendevick.net/fuwuqikongjian/512.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有