.NET Web开发总结(五)

时间:2021-03-24 07:59:52

7 常用服务器控件

7.1 服务器控件概述

· 服务器控件是指在服务器上执行程序的代码的组件 通常这些服务器控件会提供
    给用户一定的界面,  以便用户与服务器之间快速的交互

7.2 HTML 服务器端控件

· HTML服务器端控件是ASP.NET 页面中不可缺少的组成部分之一 该控件是由HTML控件转变而来 在服务器端 该控件能够利用ASP.NET访问其相关数据以及属性  但无法执行程序代码
    其编程代码需要在客户端代码完成 所以说HTML服务器控件还不算是真正的服务器控件

· 运用HTML控件提交信息

· 服务器获取表格属性
    · 动态删除表格的行

HTML控件只能在客户端编程完成 *无法执行(后台)程序代码 * 其实也可以在后台完成JavaScript代码 具体详情见解投票项目
    在客户端编程完成需要依靠javascript编程语言 来完成HTML控件的逻辑

JavaScript语法详细介绍: (补)

7.3 7-2 获取服务器控件属性
    一 插入表格 在div中  单击  后  选项卡中 表A

后  在设置其 后台代码的标识符 id  还有后台交互 的属性 runat = "server"
    
    7-3 动态删除表格的行
        border =1 边框大小
        控件的onclick 也可以写变量 "Text1.value= (this.id)"单机事件

注意: asp.net 是服务器控件 可后台控制
        FindControl搜索指定服务器控件(id名称)
        为何搜索 指定的服务器控件呢? 原由是 搜索非asp.net服务器控件
        而是HTML服务器控件  HTML因为没有后台
        服务器回发与加载  Page.IsPostBack 判断是服务器回发还是加载 是Bool值 第一次加载: flase 回发: true
    
    7.3 常用的标准服务器控件

按钮控件属性中 其中PostBackUrl 是按钮跳转到指定页面
        PreviousPage 是或取传输当前页面的页 也就是获取跳转前页
        PreviousPage.FindControl 搜索跳转前页控件

单选框按钮: ReadioButtionList  单选· 设置该标签为水平显示属性 : RepeatDirection :Horizontal

复选框按钮: ChecBoxList   注意 加了List意思是链表 一个某控件集合
        这种控件集合: ChecBoxList1.Items[i] //获取控件集合
                            .Count 求集合中所有对象数
                          .Text 获取或设置文本
                          .Value 获取或设置额外值
                          .Insert(0,""); 添加一组数据 在0位置添加                            Text文本
                    Insert[0].Value = "2"; //在索引0控件添加Value值
                          .Selected  获取当前控件是否被选中值(需要索引)其是bool类型
                          .SelectedValue 获取当前控件的所有Value值
                    Myarray.Add(new ListItem("",""));新建立一个数据源并且添加到可变长数据里      
        ChecBoxList1.DataSource = Myarray; //则是将数据源添加进来
        CheckBoxList.DataBind();//绑定  将数据源绑定
        CSS 级联样式 : div1.Style[] = x;
             
    下拉菜单: DropDownList  下拉菜单集合

控件属性: AutoPostBack 为 True 当内容选定后 ,自动回发到服务器
                    
    7-6 日历

一般来说 使用控件List集合  一般使用switch情况比if语句要好的多 一般来讲 如果一个变量拥有多种情况 建议使用switch

7-7  上传文件控件
        if(FileUpload1 .FileName == "" || FileUpload1.FileName == null)
                return;
            string file_N = FileUpload1.FileName.ToString(); //获取文件名
            string[] file_path = file_N.Split('\\');//获取完整路径
            file_N = file_path[file_path.Length - 1];//获取真正文件名称
            string webDir = Server.MapPath(".")+"\\img\\"; //在项目中创建img目录
            if(!Directory .Exists (webDir)){
                Directory.CreateDirectory(webDir); //判断目录是否存在如果不存在则创建
                FileUpload1.SaveAs(webDir + file_N);
                Response.Write("文件上传成功");
            }

应该注意的是  .net文件大小有上传时间限制 并且大小也有限制 在web配置文件中可以设置
    
    在 <System.web>
 <httpRuntime executionTimeout="240" maxRequestLength ="20480"/>
</System.web>
    进行配置  executionTimeout 最大上传时间限制为240 文件最大大小为20480k 约为
                                     20M  20971520字节
    
    一般来讲我们把.net中的IIS配置文件Web 中Framework=4.5 删除即可 配置文件不会出错