ASP.NET基础知识(二)

巴扎黑
发布: 2016-12-20 13:37:10
原创
1474人浏览过

radiobutton控件会在客户端渲染成<input type="radio" />,和服务端控件一样,也可以通过groupname属性尽心分组。

Button控件会在客户端渲染成<input type="submit" />

LinkButton控件会在客户端渲染成<a href="javascript:__doPostBack" />

ImageButton控件是一个可以设置ImageUrl的Button,它会在客户端渲染成<input type="image" />
相同点 :都可以把OnClientClick属性设置为"return confirm('确定要删除吗?')";

Panel控件会在客户端渲染成DIV,如果设置了它的GroupingText属性,则会渲染成<fieldset><legend>这样设置</legend></fieldset>,也就是GroupBox的效果。

Hyperlink控件会在客户端渲染成<a />标记。
可以设置属性NavigateUrl=""和Target="",若设置ImageUrl属性,则会渲染成<a href=""><image /></a>.

FileUpload控件会在客户端渲染成<input type="file">.
一般上传文件的代码这样写
if(FileUpload1.hasFile())
{
string uploadPath = Server.MapPath("~/upload/");
FileUpload1.SaveAs(uploadPath + FileUpload1.FileName);
}

总的来说,控件共分为三种:
1)HTML控件
2)ASP.NET服务端控件
3)有runat="server"的HTML控件

验证控件
1)RequireFieldValidator:必填字段,可进行服务端的非空校验,常用属性有:ErrorMessage, ControlToValidate , InitialValue . 在服务端验证时可以这样写if(this.IsValide){…}
2)RangeValidator:判断值是否在给定的最大值(MaximumValue)和最小值(MinimumValue)之间,可比较的数据类型有string, int , currency.
3)CompareValidator:用于比较两个值的关系是否满足要求的或者指定类型的数据。比较操作符有:<,>,=,!= .常用属性:ValueToCompare :与哪个值比较,ControlToCompare :与哪一个控件进行比较。
4)RegularExpressionValidator:用于验证数据满足的正则表达式。常用属性:ValidationExpression :定义正则表达式。
5)CustomValidator:用于特殊情况的自定义验证。
6)注意 :(1)几乎所有的验证控件都得在客户端和服务端进行校验。
(2)给验证控件进行分组:ValidationGroup
(3)是否触发校验事件:CauseValidation:false,表示不触发验证事件
(4)修改验证控件是否占位:Display设置成Dynamic或者Static.

数据绑定
1)例如:<ItemTemplate><%#Eval ("Id")%></ ItemTemplate >
2)Repeater数据控件用于绑定数据的遍历显示,当然,我们也可以用foreach语句手写。
3)Repeater控件的其它模板
(1)<AlternatingItemTemplate>设置隔行的不同风格,也就是偶数行的风格。
(2)<HeadTemplate>和<FootTemplate>头部尾部的模板,分别显示在数据的前面和后面,比如可防 止<table></table>或者<ul></ul>等。
(3)<SeperatorTemplate>,两项数据之间的分隔符。

数据库中只存放图片的路径,ResolveClientUrl("~/images/ + url");

放在<ItemTemplate>模板中的控件无法直接在后台c#代码中操作,得先通过ID找到控件,如:e.Item.FindControl("txtName");

Repeater控件一般只用来展示数据,而ListView控件用来实现增删改产操作更方便一些。

无涯·问知
无涯·问知

无涯·问知,是一款基于星环大模型底座,结合个人知识库、企业知识库、法律法规、财经等多种知识源的企业级垂直领域问答产品

无涯·问知 40
查看详情 无涯·问知

Eval()是单向绑定,用于读取数据库中的数据;Bind()是双向绑定,即能把数据库中的值读到页面上,也能把用户的值传到数据库中。

ListView控件的注意事项:
(1)自动生成的样式要提炼到css样式中,不要做成内联式的;
(2)<ItemTemplate>里面一般没必要用<asp:Label>控件展示只读数据,直接输出就可以。
(3)<LayoutTemplate>中必须有一个id为itemPlaceHolder的服务端控件。将表头自动生成的英文字段改成汉语,没用的ID要删除,没必要展示出来。

在ItemDataBound事件中应注意:
(1)判断数据行的类型 e.Item.ItemType == ListViewItemType.DataRow
(2) 取得对应的RowView ListViewDataItem lvDataItem = (ListViewDataItem)e.Item; DataRowView rowView = (DataRowView)lvDataItem.DataItem;
(3)在用FindControl时应注意 AlternatingItemTemplate问题。

ListView和GridView的区别
(1)GridView只能渲染成Table
(2)ListView既能渲染成Table,也能渲染成<ul><li>

DropDownList控件绑定SelectedValue属性,如:SelectedValue="<%#Eval('txtName')%>"

如果在页面前端不涉及增删改查等交互信息的纯展示页面,可以禁用ViewState,有两种方法:
(1)页面整体禁用ViewState:在顶部<page>标签内加EnabelViewState="false"
(2)对指定控件禁用ViewState:在该控件的属性上添加EnabelViewState="false"

网站性能调优
(1)缓存Cache是网站性能调优的第一个手段;
(2)索引Index是数据库性能调优的第一个手段;

设置页面缓存的方法:在页面头部区域<page>中设置<%@ OutputCache Duration="20" VaryByParam="none"(这项是可变的,可设置为参数:id;num;age等)%>

数据缓存的设置方法,针对ObjectDataSource设置属性,
(1)EnableCaching="True"
(2)CacheDuration="20"

写在后边:鲁迅先生有句话"哪里有天才?我是把别人喝咖啡的功夫都用在工作和学习上的!"非常赞同,勤能补拙是良训。好了,今天就到这里吧!

相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号