《课程5上课日志1》由会员分享,可在线阅读,更多相关《课程5上课日志1(8页珍藏版)》请在金锄头文库上搜索。
1、课程5 WebForm控件更便捷地创建页面上课日志1一、基本的Web控件准备知识1、情景导入Web控件可以便捷的创建页面以及完成功能使用ASP.NET Web窗体开发用户界面可以提高开发效率,Web窗体实现一个页面效果基本上只需要两步前端页面通过HTML标签来实现与后台服务器的交互相对比较麻烦,采用web控件可以极大的提高程序开发效率2、web控件讲解Web控件可以很好的与后台程序交互的原理:当在页面拖拽一个控件(包括带runat=“server”标记的HTML标签)时,在.designer.cs文件的部分类中就会自动生成一个字段,该字段就是拖拽的服务器控件的类型的对象,而.designer.
2、cs文件中的部分类与.aspx.cs文件中的部分类构成一个整体类,所以在.aspx.cs文件中就可以控制拖拽到该页面的控件了。含义:3、常用控件及其属性事件控件名称 描 述 Label用于在页面上显示文本CheckBox用于在页面上显示一个复选框RadioButton用于在页面上显示单选按钮TextBox用于在页面上创建一个可输入的文本框ListBox用于在页面上创建一个多选的下拉列表并且支持数据绑定Button在页面上显示一个按钮,该按钮可以是提交按钮或命令按钮,默认是提交按钮4、数据验证控件控件名称描 述RequiredFieldValidator非空数据验证,用于验证输入值是否为空Ran
3、geValidator数据范围验证,用于验证输入的值是否在指定范围内ValiadtionSummary错误信息显示,用于显示页面中所有错误信息CompareValidator比较控件,用于将输入的值和其他控件或常量进行比较RegularExpressionValidator格式验证,用于验证输入信息是否与预定格式匹配二、用户注册实例(实例5-1)界面设计、添加非空验证控件1、界面设计 2、添加非空验证控件RequiredFieldValidator说明各属性含义:Display:用于设置错误信息显示方式,它有三个可取值Dynamic(动态显示错误信息,其在页面上的位置只有在验证错误发生时才给出
4、),None(验证错误信息,但不显示,会在ValidationSummary控件中显示错误信息),Static(不管验证错误何时发生,页面都会留出位置供错误信息显示)。注意:在web应用程序中使用验证控件,需要在bin目录下添加AspNet.ScriptManager.jQuery.dll程序集文件。小技巧:该程序集文件利用VS新建项目时选择ASP.Net web窗体应用程序(即不选择空的web应用程序)时系统会自动添加该程序集到引用(bin)文件夹下。3、测试下验证控件作用三、为实例5-1添加比较、格式、取值范围验证控件1、添加比较验证控件CompareValidator此外还可以跟另外一个
5、值比较2、添加格式验证控件RegularExpressionValidator身份证号码、邮政编码、固定电话号码3、添加取值范围验证控件RegularExpressionValidator4、错误信息汇总显示控件ValiadtionSummary只是对显示页面中所有错误信息进行汇总显示,每个控件还是要采用相应的验证控件去验证(设置相应的属性),只是错误显示方式可以设置为Display=none四、为实例5-1创建数据库、绑定下拉列表数据1、创建数据库UserMessage表Area表2、添加SqlHelper工具类在web.Config文件添加数据库连接字符串并注意检查name属性3、绑定下拉
6、列表数据/绑定单个下拉框 private void BindDropDownList(DropDownList ddl, params SqlParameter pms) string sql = select * from Area where ParentID=pId; DataTable dtprovince = SqlHelper.ExecuteDataTable(sql, pms); /绑定数据源 ddl.DataSource = dtprovince; /设置为DropDownList提供文本内容的数据源字段 ddl.DataTextField = Name; /设置为DropDo
7、wnList提供值的数据源字段 ddl.DataValueField = AreaID; ddl.DataBind(); /级联绑定下拉列表框 private void BindAllDropDownList(params SqlParameter pms) /绑定省份,即所有pId=0的数据 BindDropDownList(DDLProvince, pms); /被选中的省份 int citySelect = Convert.ToInt32(DDLProvince.SelectedItem.Value); /绑定被选中省份下的市 BindDropDownList(DDLCity, new
8、SqlParameter(pId, citySelect); /被选中的市 int countySelect = Convert.ToInt32(DDLCity.SelectedItem.Value); /绑定被选中市的县 BindDropDownList(DDLCounty, new SqlParameter(pId, countySelect); protected void Page_Load(object sender, EventArgs e) /判断是否为回发 if (!IsPostBack) /绑定所有控件的数据 BindAllDropDownList(new SqlParame
9、ter(pId, 0); else/刷新页面时密码框的值不被清空 txtPwd.Attributesvalue = RequesttxtPwd; txtRePwd.Attributesvalue = RequesttxtRePwd;/txtPwd.Attributesvalue =txtPwd.Text;/如何理解? /txtRePwd.Attributesvalue = txtRePwd.Text; 注意:没有突出强调的两句,则在刷新页面(比如省市选择发生改变时)密码和重复密码框中的值会被清空。理解:txtPwd.Attributesvalue =txtPwd.Text;意思为文本框(txt
10、Pwd)设置value属性为这时文本框的值(txtPwd.Text)。这个vaule属性是为html控件属性,本身TextBox服务器端控件是不存在这种属性的,运行时会编译生成html控件(),可以查看页面源代码看看的。五、为实例5-1注册下拉列表事件及注册按钮单击事件1、注册下拉列表事件protected void DDLProvince_SelectedIndexChanged(object sender, EventArgs e) BindDropDownList(DDLCity, new SqlParameter(pId, DDLProvince.SelectedItem.Value); BindDropDownList(DDLCounty, new SqlParameter(pId, DDLCity.SelectedItem.Value); protected void DDLCity_SelectedIndexChanged(object sender,