【ASP.NET】服务器控件大演练与实例分析
asp服务器控件
简介(特点):保存视图状态,公共对象模型,简单,用户定制,创建浏览器特定HTML
- web服务器控件:文本控件(2个)
1) TextBox控件
<asp:TextBox ID="TextBox5" runat="server" AutoPostBack="True" BackColor="#CCCCCC" BorderColor="#FF0080" BorderStyle="Solid" BorderWidth="3px" Font-Bold="True" Font-Overline="True" Font-Size="Larger" Font-Strikeout="False" ForeColor="Red" Height="79px" MaxLength="12" ontextchanged="TextBox5_TextChanged" ReadOnly="True" TextMode="MultiLine" ToolTip="这是一个文本控件" ViewStateMode="Enabled" Width="282px">文本控件属性事件</asp:TextBox>
2) Label控件
- 控制权转移控件(4个)1)Button 2)ImageButton3)LinkButton4)HyperLink
2 选择控件,(4)
1)DropDownList控件
代码如下:
1 protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) 2 { 3 dlbl.Text = "你选择的是" +DropDownList1.SelectedItem.Value +"."; 4 }
2)CheckBoxList控件
代码如下:
1 protected void CheckBoxList1_SelectedIndexChanged(object sender, EventArgs e) 2 { 3 string str = ""; 4 foreach (ListItem item in CheckBoxList1.Items) 5 { 6 if (item.Selected) 7 { 8 str+=item.Value+""; 9 } 10 } 11 chlbl.Text = "你选择的是:" + str + "."; 12 }
3)RadioButtonList控件
代码如下:
1 protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e) 2 { 3 string str = ""; 4 foreach (ListItem item in RadioButtonList1.Items) 5 { 6 if (item.Selected) 7 { 8 str = item.Value + ""; 9 } 10 } 11 rlbl.Text = "你选择的是:" + str + "."; 12 }
4)ListBox控件
<asp:ListBox ID="ListBox1" runat="server" AutoPostBack="True" onselectedindexchanged="ListBox1_SelectedIndexChanged" SelectionMode="Multiple"><asp:ListItem>唱歌</asp:ListItem><asp:ListItem>写代码</asp:ListItem><asp:ListItem>游戏</asp:ListItem></asp:ListBox><br /><br /><asp:Label ID="lbrlbl" runat="server" />
1 protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e) 2 { 3 string str = ""; 4 foreach (ListItem item in ListBox1.Items) 5 { 6 if (item.Selected) 7 { 8 str += item.Value + ""; 9 } 10 } 11 lbrlbl.Text = "你选择的是:" + str + "."; 12 }
3 容器控件
1)Panel控件
panel.aspx:
<asp:Panel ID="Panel1" runat="server" BorderColor="Blue" BorderStyle="Solid" BorderWidth="4px" Height="45px" οnlοad="Panel1_Load" Width="543px"></asp:Panel>
panel.aspx.cs
1 protected void Panel1_Load(object sender, EventArgs e) 2 { 3 TextBox text = new TextBox(); 4 text.BorderColor = System.Drawing.Color.Red; 5 text.BorderStyle = BorderStyle.Solid; 6 text.BorderWidth = 2; 7 text.Text = "this is panel test page."; 8 this.Panel1.Controls.Add(text); 9 }
2)PlaceHolder控件
placeholder.aspx:
<asp:PlaceHolder ID="PlaceHolder1" runat="server" οnlοad="PlaceHolder1_Load"></asp:PlaceHolder>
placeholder.aspx.cs:
1 protected void PlaceHolder1_Load(object sender, EventArgs e) 2 { 3 TextBox text = new TextBox(); 4 text.BorderColor = System.Drawing.Color.Red; 5 text.BorderStyle = BorderStyle.Solid; 6 text.BorderWidth = 2; 7 text.Text = "this is panel test page."; 8 this.PlaceHolder1.Controls.Add(text); 9 }
4 HTML服务器控件:
- HtmlFrom控件,
<form id="form1" runat="server" method="post" action="目标页面的URL"></form>
5 HtmlImage控件
<img id="img1" src="图像URL" runat="server"/>
6 验证控件:
通过一个实例验证所有控件
前台代码:
1 <asp:Panel ID="Panel2" runat="server" Height="382px" style=" margin-left:300px" Width="440px" BackColor="#99CCFF" BorderColor="Red" BorderWidth="4px"> 2 <div id="div1"> 3 <ul style="font-size:small; vertical-align:middle;"> 4 <li style=" font-size:large; text-align: center;">用户注册</li> 5 <li>用户名: <asp:TextBox ID="txtname" runat="server"/> 6 <asp:RequiredFieldValidator ID="rfvname" runat="server" ErrorMessage="用户名不能为空" ForeColor="red" ControlToValidate="txtname"></asp:RequiredFieldValidator> 7 <asp:CustomValidator ID="CustomValidator1" runat="server" ControlToValidate="txtname" ForeColor="Red" ErrorMessage="必须包含a" onservervalidate="CustomValidator1_ServerValidate"></asp:CustomValidator> 8 </li> 9 <li>密 码: <asp:TextBox ID="txtpass" runat="server"/> 10 <asp:RequiredFieldValidator ID="rfvpwd" runat="server" ControlToValidate="txtpass" ForeColor="red" ErrorMessage="密码不能为空"></asp:RequiredFieldValidator> 11 </li> 12 <li>确认密码: <asp:TextBox ID="txtrepass" runat="server"/> 13 <asp:CompareValidator ID="cvpwd" runat="server" ControlToCompare="txtpass" ForeColor="red" ControlToValidate="txtrepass" ErrorMessage="确认密码和密码必须相同"></asp:CompareValidator> 14 </li> 15 <li> 16 出生日期: <asp:TextBox ID="txtbirthday" runat="server" /> 17 <asp:CompareValidator ID="cvbri" runat="server" ControlToValidate="txtbirthday" ForeColor="red" ErrorMessage="输入必须是日期" Operator="DataTypeCheck" Type="Date"></asp:CompareValidator> 18 <asp:RangeValidator ID="rvBrithday" runat="server" ControlToValidate="txtbirthday" MaximumValue="2012/12/31" MinimumValue="2012/1/1" ForeColor="Red" ErrorMessage="日期超出范围"></asp:RangeValidator> 19 </li> 20 <li> 21 邮箱: <asp:TextBox ID="txtem" runat="server" /> 22 <asp:RegularExpressionValidator ID="revEmail" runat="server" ErrorMessage="请输入正确的E-mail地址!" ControlToValidate="txtem" ForeColor="Red" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:RegularExpressionValidator> 23 </li> 24 <li>性别: 25 <asp:RadioButtonList ID="RadioButtonList2" runat="server" RepeatDirection="Horizontal"> 26 <asp:ListItem Selected="True">男</asp:ListItem> 27 <asp:ListItem>女</asp:ListItem> 28 </asp:RadioButtonList> 29 </li> 30 <li> 31 爱好: 32 <asp:CheckBoxList ID="CheckBoxList2" runat="server" RepeatDirection="Horizontal"> 33 <asp:ListItem>睡觉</asp:ListItem> 34 <asp:ListItem>聊天</asp:ListItem> 35 <asp:ListItem>写代码</asp:ListItem> 36 </asp:CheckBoxList> 37 </li> 38 <li> 39 省份: 40 <asp:DropDownList ID="DropDownList2" runat="server"> 41 <asp:ListItem >河南省</asp:ListItem> 42 <asp:ListItem >安徽省</asp:ListItem> 43 <asp:ListItem >河北省</asp:ListItem> 44 </asp:DropDownList> 45 </li> 46 <li> 47 <asp:Button ID="Button4" runat="server" Text="注册" οnclick="Button4_Click" /> 48 <asp:Button ID="Button5" runat="server" Text="取消" /> 49 </li> 50 <li> 51 <asp:TextBox TextMode="MultiLine" ID="zhucetxt" runat="server" Height="44px" Width="378px"></asp:TextBox> 52 </li> 53 <li> 54 <asp:ValidationSummary ID="ValidationSummary1" runat="server" /> 55 </li> 56 </ul> 57 </div> 58 </asp:Panel>
后台代码:
1 protected void Button4_Click(object sender, EventArgs e) 2 { 3 string name = txtname.Text; 4 string pass = txtpass.Text; 5 string repass = txtrepass.Text; 6 string birthday = txtbirthday.Text; 7 if (repass != pass) 8 { 9 Response.Write("<script>alert('密码必须相同!')</script>"); 10 } 11 string sex=RadioButtonList2.SelectedItem.Value; 12 string str = ""; 13 foreach(ListItem item in CheckBoxList2.Items) 14 { 15 if(item.Selected) 16 { 17 str+=item.Value; 18 } 19 } 20 string like = str; 21 string pro = DropDownList2.SelectedItem.Value; 22 zhucetxt.Text = "姓名:" + name + ""+ "密码:" + pass + "" +"生日:"+birthday + "性别:" + sex + ""+ "爱好:" + like + ""+ "省份:" + pro; 23 }
1)RequiredFiledValidator控件:用于验证必填字段中是否输入了值。
用户名: <asp:TextBox ID="txtname" runat="server"/>
<asp:RequiredFieldValidator ID="rfvname" runat="server" ErrorMessage="用户名不能为空" ForeColor="red"ControlToValidate="txtname"/>
<asp:CustomValidator ID="CustomValidator1" runat="server" ControlToValidate="txtname" ForeColor="Red" ErrorMessage="必须包含a" onservervalidate="CustomValidator1_ServerValidate"></asp:CustomValidator>
2)CompareValidator控件:将用户输入的值和另一个控件值进行比较,或固定值比较。
确认密码: <asp:TextBox ID="txtrepass" runat="server"/>
<asp:CompareValidator ID="cvpwd" runat="server" ControlToCompare="txtpass"ForeColor="red"ControlToValidate="txtrepass" ErrorMessage="确认密码和密码必须相同"/>
3)RangeValidator控件:验证用户输入的值是否在指定范围
出生日期: <asp:TextBox ID="txtbirthday" runat="server" />
<asp:CompareValidator ID="cvbri" runat="server" ControlToValidate="txtbirthday" ForeColor="red" ErrorMessage="输入必须是日期" Operator="DataTypeCheck" Type="Date"/>
<asp:RangeValidator ID="rvBrithday" runat="server" ControlToValidate="txtbirthday" MaximumValue="2012/12/31" MinimumValue="2012/1/1" ForeColor="Red" ErrorMessage="日期超出范围"/>
4)RegularExpressionValidator控件:验证输入的值是否与正则表达式匹配
邮箱: <asp:TextBox ID="txtem" runat="server" />
<asp:RegularExpressionValidator ID="revEmail" runat="server" ErrorMessage="请输入正确的E-mail地址!" ControlToValidate="txtem" ForeColor="Red" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"/>
5)CustomValidator控件:用于创建自定义验证
用户名 <asp:TextBox ID="txtname" runat="server"/>
<asp:CustomValidator ID="CustomValidator1" runat="server" ControlToValidate="txtname" ForeColor="Red" ErrorMessage="必须包含 a" onservervalidate="CustomValidator1_ServerValidate"/>
CustomValidator1_ServerValidate事件:
protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
{
args.IsValid = args.Value.Contains("a");
}
6)ValidationSummar控件:用于概括所有错误提示
<asp:ValidationSummary ID="ValidationSummary1" runat="server" />
==》满足所有条件,运行正确结果:
- 自定义控件:
常见自定义服务器控件分4种:复合控件,验证控件,模板控件和数据绑定控件
【ASP.NET】服务器控件大演练与实例分析相关推荐
- ASP.NET服务器控件的生命周期分析
本文实例分析了ASP.NET服务器控件的生命周期.分享给大家供大家参考.具体如下: (1)初始化----在此阶段中,主要完成两项工作:一.初始化在传入Web请求生命周期内所需的设置:二.跟踪视图状态. ...
- C#保留2位小数几种场景总结 游标遍历所有数据库循环执行修改数据库的sql命令 原生js轮盘抽奖实例分析(幸运大转盘抽奖) javascript中的typeof和类型判断...
C#保留2位小数几种场景总结 场景1: C#保留2位小数,.ToString("f2")确实可以,但是如果这个数字本来就小数点后面三位比如1.253,那么转化之后就会变成1.25. ...
- Jquery写的幸运大转盘抽奖实例,用asp.net处理的服务器逻辑,附源码下载
[实例简介] 该幸运大转盘抽奖实例已实现服务器端的业务逻辑代码,稍加改动就可以应用实际了 文件:590m.com/f/25127180-488779229-66bbf7(访问密码:551685) [实 ...
- ASP.NET 服务器控件授权
原文:http://msdn.microsoft.com/zh-cn/library/aa479017.aspx 摘要:了解 ASP.NET 服务器控件的授权要求,了解可用于 .NET 框架版本 1. ...
- .NET程序设计 实验名称 实验六 ASP.NET服务器控件
计算机学院实验报告 课程名称 .NET程序设计 实验名称 实验六 ASP.NET服务器控件 1.熟悉用户控件的使用. 2.熟悉导航控件的使用. 3.掌握母版页的使用. 二.实验内容: 本实验将通过创建 ...
- 服务器版本信息泄露修改iis,IIS攻击与安全加固实例分析 -电脑资料
IIS作为一款流行的Web服务器,在当今互联网环境中占有很大的比重,绝大多数的asp.asp.net网站都运行在它上面,管理员的安全意识不高或技术上的疏忽而惨遭毒手.本文通过实例来谈谈针对IIS的攻击 ...
- RPC-原理及RPC实例分析
还有就是:RPC支持的BIO,NIO的理解 (1)BIO: Blocking IO;同步阻塞: (2)NIO:Non-Blocking IO, 同步非阻塞; 参考:IO多路复用,同步,异步,阻塞和非阻 ...
- 马歇尔·赫伯特:人工智能的前沿技术与实例分析
来源:中国人工智能学会 2017年12月11日,国际知名机器人专家.美国卡耐基梅隆大学机器人研究所所长马歇尔·赫伯特(Martial Hebert)教授和首席科学家大卫·伯恩(David Bourne ...
- 谈谈Mux与门电路的相互替换(包含实例分析)
在秋招中,经常遇到的问题是用Mux替换门电路,例如与门,或门,非门,缓冲器,异或,甚至一位全加器,之前写过与此相关的博客如: [Verilog HDL 训练]第 04 天(竞争.冒险.译码等): 4. ...
最新文章
- 【c语言】蓝桥杯算法提高 c++_ch02_02
- 徒手撸框架--实现 RPC 远程调用
- boost::allocate_shared_noinit相关的测试程序
- Linux进程详细信息查看
- lib 和 dll 的区别、生成以及使用详解
- 【转】Ubuntu下使用sysv-rc-conf管理服务
- 使用MAC 编译合约的时候报错:
- html5中api有什么,HTML5中的API概览
- JVM GC(垃圾回收机制)
- 树莓派 pip 手动安装 和使用阿里云源
- 台式电脑已连接但无法上网_【PC】电脑网络连接正常但无法正常上网?教你几种解决办法!...
- java 异常处理 Throwable Error 和Exception
- 防火墙软件 - IPCop
- cogs 315. [POJ3255] 地砖RoadBlocks
- Atitit.常见软件 数据 交换格式 标准
- WPS JS宏入门案例集锦
- 查找python array索引
- 算符优先系列之(二)算符优先关系表
- Tobii pro lab学习笔记3_Metrics统计指标
- Cesium中Primitive与Entity详细介绍