ASP.NET控件集合
文章目录
- 前言
- 一、控件分类
- 1.HTML控件
- 2.HTML服务器控件
- 3.ASP.NET服务器控件
- 4.用户控件和自定义控件
- 二、HTML控件和ASP.NET服务器控件
- 1.HTML控件
- 2.ASP.NET服务器控件
- 三、常用服务器控件
- 1.Label控件
- 属性
- 2.Literal控件
- 属性
- 3.TextBox控件
- 属性
- 4.HiddenFiled控件
- Button控件
- 属性
- 类型
- 5.RadioButton控件
- 6.HyperLink控件
- 四、数据验证控件
- 数据验证方式
- 1.非空验证控件
- 属性
- 2.比较验证控件
- 属性
- 3.范围验证控件
- 属性
- 4.正则表达式验证控件
- 属性
- 5.自定义验证控件
- 属性
- 6.验证信息汇总控件
- 属性
- 五、存储表格数据控件
- 1.DataList
- 2.Repeater
- 3.GridView
前言
ASP.NET的WebForm框架是基于控件和事件结合实现的Web网页,在使用时常常不知其控件和HTML标签的不同,此文章主要来介绍ASP.NET控件和HTML控件的对比,以及WebForm框架中常用的控件,后续持续更新…
一、控件分类
1.HTML控件
纯正的HTML标签
2.HTML服务器控件
在HTML标签中添加一个runat="server"的属性
3.ASP.NET服务器控件
ASP.NET中提供的类似于Winform的控件
4.用户控件和自定义控件
二、HTML控件和ASP.NET服务器控件
1.HTML控件
(1) 运行在客户端
(2)没有回传,不能用ViewState维持状态
(3)浏览器完成事件处理需要使用(JavaScript)
(4)如果需要访问后台C#,现在典型就是使用JQuery
2.ASP.NET服务器控件
(1) 运行在服务器端
(2)能回传,能用ViewState维持状态
(3)服务器完成事件处理(C#后台处理)
(4) 事件驱动模型编程(控件+事件)
三、常用服务器控件
1.Label控件
Label控件在页面上显示一个静态文本
属性
(1)Text:标签上显示的文本
(2)ForeColor:文字颜色
(3) Visible:是否可见
缺点:会生成一个Span标签
2.Literal控件
属性
(1)Text:标签上显示的文本
(2)ForeColor:文字颜色
(3) Visible:是否可见
特点:不会生成任何多余代码,因此在实际应用中如果时单纯显示文本,建议使用Literal而不是Label
3.TextBox控件
在页面上显示一个可编辑的文本框
属性
(1) AutoPostBack:
(True/False)是否自动提交(和TextChanged事件一起使用,很少使用)
(2)TextMode:
a. SingleLine:只能单行输入
b. MultLine:允许多行输入
c. PassWord:密码输入方式
4.HiddenFiled控件
隐藏域控件:不占网页的位置,不显示内容,通过Value保存值
Button控件
Button控件在页面上显示一个按钮
属性
(1) PostBackUrl:发送到的页面跨页提交时设置
(2)CommandName:按钮相关的命令名
(3)CausesValidation:是否激活验证
类型
(1) Button:普通按钮
(2)LinkButton:超链接按钮
(3)ImageButton:图像按钮
共性:都是Submit类型
按钮的单击添加客户端脚本
<asp:Button ID="Button2" runat="server" Text="删除" OnClientClick="return confirm('确定删除吗?')" /> <%-- 弹框返回“确定删除吗?” --%><asp:Button ID="Button1" runat="server" Text="普通按钮" PostBackUrl="http://www.yltedu.com" /><br /><asp:LinkButton ID="LinkButton1" runat="server" PostBackUrl="http://www.yltedu.com">超链接按钮</asp:LinkButton><br /><asp:ImageButton ID="ImageButton1" runat="server" /><br />
5.RadioButton控件
单选按钮
<asp:RadioButton ID="RadioButton1" GroupName="sex" runat="server" Text="男"/>
<asp:RadioButton ID="RadioButton2" GroupName="sex" runat="server" Text="女"/>
设置GroupName属性值相同,可以是选择时只出现一个
6.HyperLink控件
超链接控件
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="https://blog.csdn.net/dust__">打开官网</asp:HyperLink>
四、数据验证控件
在使用表单时要做表单验证,很多表单验证都是需要在前台完成,服务器也可以进行验证但是不推荐
数据验证方式
(1) 编写后台C#代码验证:页面回传,用户体验不好,服务器压力大
(2)编写Javascript脚本进行验证:特效可以自定义,但是编写较为麻烦
(3)ASP.NET提供的验证控件:验证方便,简单;安全性较高
(4)JQuery验证插件:使用简单、方便,用户体验好。
1.非空验证控件
RequiredFieldValidator控件用于验证用户输入是否为空;常与其他控件一起使用
属性
(1)ControlToValidate:验证的控件ID
(2)ForeColor:错误提示文字的颜色
(3) ErrorMessage:错误的提示文本
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="请输入用户ID" ForeColor="Red" ControlToValidate="TextBox1" ></asp:RequiredFieldValidator>
2.比较验证控件
CompareValidator控件用于比较控件的值,例如两次密码需要输入一致
属性
(1) ControlToValidate:验证的控件ID
(2) ControlToCompare:要进行对比的控件
(3) Type:比较类型设置,不同类型的比较可能会出错
(4) Operator:比较运算符默认等于
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox><asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<asp:CompareValidator ID="CompareValidator1" runat="server" ErrorMessage="验证码输入不一致" ControlToCompare="TextBox3" ControlToValidate="TextBox2" ForeColor="Red">*</asp:CompareValidator>
3.范围验证控件
RangeValidator控件用于验证日期、数字等在一定范围内
属性
(1) MaxmumValue:范围的上限
(2) MinmumValue:范围的下限
(3) Type:验证的类型(字符串、整数、浮点型、日期、货币)
<asp:TextBox ID="TextBox4" runat="server" TextMode="DateTime"></asp:TextBox>
<asp:RangeValidator ID="RangeValidator1" runat="server" ErrorMessage="日期不对" ForeColor="Red" ControlToValidate="TextBox4" MaximumValue="2020-03-01" MinimumValue="2019-12-01" Type="Date" >
4.正则表达式验证控件
RegularExpressionValidator控件应用正则表达式作为验证规则
属性
ValidationExpression:设置要匹配的正则表达式
<asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ErrorMessage="RegularExpressionValidator" ControlToValidate="TextBox5"></asp:RegularExpressionValidator>
5.自定义验证控件
CustomValidator控件可以创建自定义的验证
(1) 可以手写js脚本进行客户端验证,也可以编写服务器端的验证代码
(2) 或者联合两种方式验证,更安全
属性
(1) ClientValidationFunction:用于客户端验证的函数
(2) ServerValidate:服务器端验证的事件方法
<asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="CustomValidator"></asp:CustomValidator>
6.验证信息汇总控件
ValidationSummary控件
(1) 该控件并不对窗体输入进行验证,而是将验证错误汇总统一显示
(2) 显示的内容是其他控件的ErrorMessage
属性
(1) ShowMessageBox:指示是否弹出提示信息
(2) ShowSummary:指示是否显示该报告内容,用于显示提示消息的时候
(3) 为避免多处提示验证错误信息,可以验证控件的Text属性为*
<asp:ValidationSummary ID="ValidationSummary1" runat="server" />
五、存储表格数据控件
1.DataList
<asp:DataList ID="DataList1" runat="server" OnItemCommand="DataList1_ItemCommand" RepeatLayout="Table"><HeaderTemplate><table border="1" cellspacing="0" cellpadding="4" style=" width:1000px;border-collapse:collapse"><tr><th>学号</th><th>姓名</th><th>性别</th><th>年龄</th><th>身份证号</th><th>出生日期</th><th>联系电话</th><th>班级</th><th>住址</th><th></th><th></th></tr></HeaderTemplate><ItemTemplate><tr><td><%#DataBinder.Eval(Container.DataItem,"StudentID")%></td><td><%#DataBinder.Eval(Container.DataItem,"StudentName")%></td><td><%#DataBinder.Eval(Container.DataItem,"Gender")%></td><td><%#DataBinder.Eval(Container.DataItem,"Age")%></td><td><%#DataBinder.Eval(Container.DataItem,"StudentIdNO")%></td><td><%#DataBinder.Eval(Container.DataItem,"Birthday","{0:yyyy-mm-dd}")%></td><td><%#DataBinder.Eval(Container.DataItem,"PhoneNumber")%></td><td><%#DataBinder.Eval(Container.DataItem,"ClassName")%></td><td><%#DataBinder.Eval(Container.DataItem,"StudentAddress")%></td><td><asp:Button ID="EditBtn" runat="server" Text="编辑" CommandName="Upt" CommandArgument='<%# Eval("StudentID") %>'/></td><td><asp:Button ID="DeleteBtn" runat="server" Text="删除" CommandName="Del" CommandArgument='<%# Eval("StudentID") %>'/></td></tr></ItemTemplate><FooterTemplate></table></FooterTemplate></asp:DataList>
2.Repeater
<asp:Repeater id="cdcatalog" runat="server"><HeaderTemplate><table width="100%" border="1" cellspacing="0" cellpadding="4" style="border-collapse:collapse"><tr><th>学号</th><th>姓名</th><th>性别</th><th>年龄</th><th>身份证号</th><th>出生日期</th><th>联系电话</th><th>班级</th><th>住址</th></tr></HeaderTemplate><ItemTemplate><tr><td><%#DataBinder.Eval(Container.DataItem,"StudentID")%></td><td><%#DataBinder.Eval(Container.DataItem,"StudentName")%></td><td><%#DataBinder.Eval(Container.DataItem,"Gender")%></td><td><%#DataBinder.Eval(Container.DataItem,"Age")%></td><td><%#DataBinder.Eval(Container.DataItem,"StudentIdNO")%></td><td><%#DataBinder.Eval(Container.DataItem,"Birthday","{0:yyyy-mm-dd}")%></td><td><%#DataBinder.Eval(Container.DataItem,"PhoneNumber")%></td><td><%#DataBinder.Eval(Container.DataItem,"ClassName")%></td><td><%#DataBinder.Eval(Container.DataItem,"StudentAddress")%></td></tr></ItemTemplate><AlternatingItemTemplate><tr bgcolor="#e8e8e8"><td><%#Container.DataItem("title")%> </td><td><%#Container.DataItem("artist")%> </td><td><%#Container.DataItem("company")%> </td><td><%#Container.DataItem("price")%> </td></tr></AlternatingItemTemplate><FooterTemplate></table></FooterTemplate></asp:Repeater>
3.GridView
后续持续更新…
ASP.NET控件集合相关推荐
- 使用 ASP+ DataGrid 控件来创建主视图/详细资料视图
Nikhil Kothari Microsoft Corporation 2000年8月 简介 Microsoft® Visual Studio.NET 的下一发行版包括 DataGrid Web 控 ...
- 一起谈.NET技术,asp.net控件开发基础(18)
本篇继续上篇的讨论,可能大家已经在使用asp.net2.0了,DataSource属性不再使用,而是跟数据源控件搭配使用.现在讨论的绑定技术都是基于1.1版本,先熟悉一下,本质上是一样的,这样一步步的 ...
- 控件包含代码块,因此无法修改控件集合
文章转载至: http://www.olnote.com/itlife/note/100000003.aspx 控件包含代码块(即<% ... %>),因此无法修改控件集合. 说明: 执 ...
- FineUI控件集合
FineUI(开源版)基于 ExtJS 的开源 ASP.NET 控件库. 1 using System;2 using System.Collections.Generic;3 using Syste ...
- 控件包含代码块(即 % ... %),因此无法修改控件集合。
第一种: 在使用主题的时候出现 控件包含代码块(即 <% ... %>),因此无法修改控件集合错误,原来错误的原因是: 控件包含代码块(即 <% ... %>),因此无法修改控 ...
- 为ASP.NET控件加入快捷菜单
Cutting Edge:为ASP.NET控件加入快捷菜单 英文原文: Adding a Context Menu to ASP.NET Controls 作者:Dino Esposito 翻译: M ...
- asp.net控件开发基础系列
本系列文章示例源码下载.各位如遇问题,请多查msdn,多利用网络.本人可能没时间一一回复,谢谢你们的支持,希望看到此文的人都能学好控件开发 http://www.cnblogs.com/Clingin ...
- 一起谈.NET技术,asp.net控件开发基础(17)
本篇将开始介绍如自定义数据绑定控件,这里感谢很多人的支持,有你们的支持很高兴.这里首先需要大家熟悉asp.net模板控件的使用,还有自定义模板控件.因为数据绑定控件多是基于模板控件的. 一.回顾 如果 ...
- asp.net控件开发技巧(2)关闭基类不必要的功能
1.关闭容器 Control类有Controls集合属性,即继承Control类的控件都是一个容器控件,asp.net控件内置的有PlaceHolder控件,其只继承自Control类,什么也没做.但 ...
最新文章
- 自研芯片架构 ,这家中国公司发布DPU芯片计划
- 将Button等控件嵌入到repeater中
- Vue开发异常: Error: custom keyword definition is invalid: data.errors should be boolean
- ASP.NET Core 注册单例方案
- 22岁少年破解史上最严重网络攻击,拯救全球互联网,三个月后却被FBI逮捕
- shiro学习(18):使用注解实现权限认证和后台管理三
- elasticsearch索引的初始化操作以及marvel操作(增删改查),批量查询_mget,批量操作_bulk
- php变量和js变量的区别吗,JS声明变量的3种方式和区别
- 2018年美赛E题M奖论文心得分享
- 维克多DBC文件结构
- 无锁编程的原理和应用
- Mac 系统打开 word 显示全黑怎么处理
- 电脑如何调整分辨率大小查看网页
- 牛客练习赛24 - AB
- 北科大计算机与通信工程博士,2015年北科大计算机与通信工程学院考研拟录取名单...
- 如何更新深度linux系统,深度操作系统 15.4 RC更新详情
- 学习Excel VBA(一)——VBA理论初步
- summernote 赋值 以及 取值
- 文正·高等数学每日一题(1)·极限
- 薄荷英语20181103
热门文章
- 基于FME的水库功能分区生态红线批量处理方案(从文本到gdb)
- python单一数字取对数与数列取对数
- scrapy 爬取指定贴吧
- cnpm报错:Error: Cannot find module ‘diagnostics_channel‘
- E-Lin通用微服务平台介绍及性能比较
- 给女朋友写的h5(移动端)小游戏,超简单
- 《汇编语言》王爽(第四版) 第十六章 实验16
- mx6 CSR8670驱动移植 基于linux3.14.58
- 交错数组 c语言,C#中的数组,多维数组和交错数组
- Jmeter脚本制作与调优脚本参数化