1、ASP.NET 服务器控件是可被服务器理解的标签

有三种类型的服务器控件(所有服务器控件必须出现在 <form> 标签内,同时 <form> 标签必须包含 runat="server" 属性。):

  • HTML 服务器控件 - 传统的 HTML 标签(向 HTML 元素添加 runat="server" 属性。如:<a id="link1" runat="server">Test!</a>
  • Web 服务器控件 - 新的 ASP.NET 标签 (没有必要映射任何已存在的 HTML 元素,它们代表更复杂的元素。如:<asp:Button id="button1" Text="Click me!" runat="server" OnClick="submit"/>
  • Validation 服务器控件 - 用于输入验证

2、IsPostBack

判断页面是首次加载的,还是数据回发(有get或者post请求过的)后的页面。一些按钮提交事件会触发页面重载,此时对于一些数据绑定和初始化的动作会被反复执行,需要使用此属性来屏蔽此种情况!

一个页面第一次显示的时候IsPostBack = false,然后在这个页面上点击按钮或其他东西提交的时候,IsPostBack = true。

常用:if(!IsPostBack) InitialData();

3、ViewState

当 Classic ASP 中的表单被提交时,所有的表单值都会被清空,当提交了一张带有大量信息的表单,而服务器返回了一个错误。不得不返回表单,然后更正其中的信息。点击后退按钮,所有的表单值都被清空了,将不得不重新开始所有的一切。

当ASP .NET 中的表单被提交时,表单会随所有表单值一同重新出现,因为ViewState 会在页面被提交到服务器时指示其状态,ASP .NET 维持了 ViewState。维持 ViewState 是 ASP.NET Web 表单的默认设置。如果不希望维持 ViewState,需在 .aspx 页面的顶部包含指令: <%@ Page EnableViewState="false" %>,或为任意控件添加属性:EnableViewState="false"。

4、常用控件

  • Label 控件用于在页面上显示文本。该文本是可编程的。
  • TextBox 控件用于创建用户可输入文本的文本框。
  • Button 控件用于显示按钮。
  • Image 控件用于显示图像。
  • Repeater 控件用于显示重复的项目列表,这些项目被限制在该控件。Repeater 控件可被绑定到数据库表、XML 文件或者其他项目列表。

5、数据绑定

  • ADO.NET读取数据库资料到资料表
<%@Import Namespace="System.Data"%>
<%@Import Namespace="System.Data.SqlClient"%> string strSql = @"select * from tb_test";
string strConn = "server=localhost;database=dbtest;user=sa;pwd=123456";
SqlConnection myConn = new SqlConnection(strConn);
SqlDataAdapter myDataAdapter = new SqlDataAdapter(strSql,myConn);
DataSet ds = new DataSet();
myDataAdapter.Fill(ds);
DataTable dtData = ds.Tables[];
  • 将资料表绑定到数据显示控件
Repeater1.DataSource=dtData;
Repeater1.DataBind();
  • 设定数据显示样式(<HeaderTemplate> 元素中的内容在输出中仅出现一次,而 <ItemTemplate> 元素的内容会对应 DataSet 中的 "record" 重复出现,最后,<FooterTemplate> 的内容在输出中仅出现一次)
<html>
<body> <form runat="server">
<asp:Repeater id="cdcatalog" runat="server"> <HeaderTemplate>
<table border="1" width="100%">
<tr>
<th>Title</th>
<th>Artist</th>
<th>Country</th>
<th>Company</th>
<th>Price</th>
<th>Year</th>
</tr>
</HeaderTemplate> <ItemTemplate>
<tr>
<td><%#Container.DataItem("title")%></td>
<td><%#Container.DataItem("artist")%></td>
<td><%#Container.DataItem("country")%></td>
<td><%#Container.DataItem("company")%></td>
<td><%#Container.DataItem("price")%></td>
<td><%#Container.DataItem("year")%></td>
</tr>
</ItemTemplate> <FooterTemplate>
</table>
</FooterTemplate> </asp:Repeater>
</form> </body>
</html>
 

6、母版页

Master Page 使您有能力为 web 应用程序中的所有页面(或页面组)创建一致的外观和行为,为其他页面提供了模版,带有共享的布局和功能。Master Page 为内容定义了可被内容页面覆盖的占位符。而输出结果就是 Master Page 和内容页面的组合。

  • master1.master
<%@ Master %>

<html>
<body>
<h1>Standard Header For All Pages</h1> <asp:ContentPlaceHolder id="CPH1" runat="server">
</asp:ContentPlaceHolder> </body>
</html>
  • page1.aspx
<%@ Page MasterPageFile="master1.master" %>

<asp:Content ContentPlaceHolderId="CPH1" runat="server">

<h2>Individual Content</h2>
<p>Paragrap 1</p>
<p>Paragrap 2</p> </asp:Content>

ASP.NET 学习笔记的更多相关文章

  1. Asp.Net 学习笔记(IIS不同版本和Asp.Net)

    主要目的是在网上记录一下学习笔记,如有不对,请指出 谢谢!! iis5.x: 存在问题,inet info收到动态请求后,aspnt_isapi.dll会被加载到inetinfo.exe(挂载w3sv ...

  2. ASP.NET 学习笔记(一)ASP.NET 概览

    ASP.NET 是一个使用 HTML.CSS.JavaScript 和服务器脚本创建网页和网站的开发框架. ASP.NET 支持三种不同的开发模式:Web Pages(Web 页面).MVC(Mode ...

  3. <转>ASP.NET学习笔记之MVC 3 数据验证 Model Validation 详解

    MVC 3 数据验证 Model Validation 详解  再附加一些比较好的验证详解:(以下均为引用) 1.asp.net mvc3 的数据验证(一) - zhangkai2237 - 博客园 ...

  4. ASP.NET学习笔记--自己写的Login.aspx

    以前有大学有学过,但是没学好,现在准备完全自己动手做一个网站,学习一下ASP.NET 做一个登录页面,首先要有创建一个新的网站,添加Login.aspx,然后做出自己想要的DIV和CSS布局, 之后创 ...

  5. ASP.NET学习笔记(5)——原生Ajax基本操作

    说明(2017-11-4 15:32:49): 1. 回北京后又快一个月了,上次在家写的下回预告,到底是没把加水印写完,而且这次也不想写.. 2. 上次许的愿,十月份看完asp.net,已经泡汤了,翻 ...

  6. ASP.NET学习笔记(3)——用户增删改查(三层)

    说明(2017-10-6 11:21:58): 1. 十一放假在家也没写几行代码,本来还想着利用假期把asp.net看完,结果天天喝酒睡觉,回去的票也没买到,惨.. 2. 断断续续的把用户信息的页面写 ...

  7. ASP.NET学习笔记1—— MVC

    MVC项目文件夹说明 1.App_Data:用来保存数据文件 2.App_Start:包含ASP.NET-MVC系统启动的相关类文件 3.Controllers:存放整个项目"控制器&quo ...

  8. ASP.NET学习笔记——ASP.NET应用程序

    0 剖析ASP.NET应用程序 用户运行ASP.NET应用程序,不是直接运行,而是使用浏览器(比如IE)通过HTTP请求一个特定的URL(如http://www.mysite.com/mypage.a ...

  9. <原>ASP.NET 学习笔记之应养成的良好习惯

    写ASP.NET时应有的良好习惯(不定时增加): 1.view的名称一定要与对应的actionMethod的名称相同:从原理上看,客户端通过url(一般形式为http://xxx/controller ...

随机推荐

  1. linux 多线程信号处理总结

    linux 多线程信号总结(一) 1. 在多线程环境下,产生的信号是传递给整个进程的,一般而言,所有线程都有机会收到这个信号,进程在收到信号的的线程上下文执行信号处理函数,具体是哪个线程执行的难以获知 ...

  2. MyBatis——优化MyBatis配置文件中的配置

    原文:http://www.cnblogs.com/xdp-gacl/p/4264301.html 一.连接数据库的配置单独放在一个properties文件中 之前,我们是直接将数据库的连接配置信息写 ...

  3. 在Maven中设置Nexus私有服务为中央工厂(repository)

    原文:http://blog.csdn.net/mexican_jacky/article/details/50275695 nexus中的仓库列表 第一种方式: <repositories&g ...

  4. OpenGL的glPushMatrix和glPopMatrix矩阵栈顶操作函数详解

    OpenGL中图形绘制后,往往需要一系列的变换来达到用户的目的,而这种变换实现的原理是又通过矩阵进行操作的.opengl中的变换一般包括视图变换.模型变换.投影变换等,在每次变换后,opengl将会呈 ...

  5. 【bzoj1029】道路抢修

    [bzoj1029]建筑抢修 传送门 http://www.lydsy.com/JudgeOnline/problem.php?id=1029 分析 http://blog.csdn.net/popo ...

  6. Mybatis那一大堆事儿--1

    <select id="listAmPerfTime" resultType="Date"> SELECT pam.perf_time AS per ...

  7. 资源 之 4.2 内置Resource实现(拾)

    4.2  内置Resource实现 4.2.1  ByteArrayResource ByteArrayResource代表byte[]数组资源,对于"getInputStream" ...

  8. 20145218 《Java程序设计》第02次实验报告

    北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1452 指导教师:娄嘉鹏 实验日期:2016.04.12 实验名称:Java面向对象程序设计 一.实验内容 初步掌握单元测试和T ...

  9. ubuntu修改更新源为163

    安装ubuntu后为了使下载及更新软件包更快,需要将自带的源更换为国内的源.以下以163为例: 1.首先备份下原始自带源: sudo cp sources.list /etc/apt/sources. ...

  10. Python--关于dict

    慕课网<Python 入门>学习笔记 1.dict 特性 dict用花括号{}表示,然后按照 key: value, 写出来即可.最后一个 key: value 的逗号可以省略. ①.di ...