1、Web服务器控件可以包含服务器上调用的事件处理程序。只有送回服务器时,才在服务器上触发事件。把autoPostBack设置为true,事件将立即传给服务器。这样就会使客户端调用Javascript把窗体数据立即传给服务器。页面返回给服务器后,通过隐藏字段ViewState比较控件值是否改变。
2、PreviousPage:获取向当前页传输控件的页。
FindControl():在页命名容器中搜索带指定标识符的服务器控件。
3、<%@ PreviousPageType VirtualPath ="~/Registration.aspx" %>
<%@ PreviousPageType attribute="value" [attribute="value"...] %>
PreviousPageType创建了一个PreviousPage属性,它返回与该指令关联的类型。
TypeName指定上一页的类型名称。为前面所有页面定义一个基类。
VirtualPath 指定生成强类型的文件的路径。
4、在一般的Asp.Net回送中,会请求整个页面。回送用户已经加载的同一个页面时,也会再次返回整个页面。为了减少网络上的传输量,可以使用ASP.Net Ajax回送。在Ajax回送中,只使用JavaScript返回并刷新页面的一部分,使用UpdatePanel可以方便地做到这一点。
UpdatePanel的内部发出AjaxPost请求。AjaxPost请求使用XmlHttpRequest对象给服务器发送一个请求。服务器只返回更新UI的数据。解释了数据后,JavaScript代码就修改UpdatePanel内部的Html控件,显示一个新的UI。
注意: 1)使用“UpdatePanel”的控件前需要页面上有 ScriptManager控件。
2)存在多个UpdatePanel时,多个UpdatePanel默认同时被修改。若将单个UpdatePanel的UpdateMode属性从Always改为Condition则对此UpdatePanel操作时,只对本UpdatePanel进行修改。
3)修改一UpdatePanel的Trigger属性,使其指向另一UpdatePanel中的对象事件,则另一UpdatePanel中的对象事件触发时,也刷新本UpdatePanel的UI界面。(定义一个UpdatePanel外部的触发器,由UpdatePanel外部控件引发更新操作)
5、有效性验证:
验证控件创建了客户端JavaScript代码,在客户端上验证输入,还创建了服务器端代码,在服务器端验证输入。把验证属性EnableClientScript设置为false,就可以关闭JavaScript。设置Page的ClientTarget属性,也可以关闭JavaScript而不需要对每个验证控件执行改变属性值的操作。
6、使用母版页,
1)把MasterPageFile特性应用于Page指令。要替换母版页内容可以使用Content控件。
2)在Web配置文件Web.config中使用<pages>元素。Asp.Net页面需要该文件中的Content元素配置。
3)处理母版页的最后一个地方是:Page_PreInit方法中。
注意:如果同时使用Page指令和Web配置文件,则Page指令会覆盖掉Web配置。一般使用Web配置默认共用母版页,Page指令共用特定母版页。
7、设置Web.sitemap为网站地图数据源
<!--<siteMap defaultProvider="XmlSiteMapProvider" enabled="true"> <providers> <clear /> <add name="XmlSiteMapProvider" description="Default SiteMap Provider" type="System.Web.XmlSiteMapProvider" siteMapFile="Web.sitemap" securityTrimmingEnabled="true" /> </providers> </siteMap>-->