ASP.Net Web开发基础 互动版

在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器

Web服务器控件

Web服务器端控件是ASP.NET重要的组成部分,服务器端控件在服务器端表现为一个对象,包含属性、方法以及相关联的事件处理程序,Web 控件提供的最重要的功能是能够实现页面与后台的交互服务。

通常IDE都提供了可视化的的编程环境,开发人员可以通过拖拽控件对页面进行设计,点击控件即可选择添加事件处理代码,编程序好像变得很简单了。

控件代码的最后执行的结果以HTML的形式输出,发送给客户端浏览器进行解析,也提高了ASP.NET对客户浏览器的兼容性。

对比我们熟悉的HTML控件,ASP.NET 提供了与之相对应的的Web服务器控件


web服务器控件

Web服务器控件都是直接或间接地从System.Web.UI.Control类继承而来的,Control类提供了一些通用的属性、方法和事件。Web服务器控件的语法如下: <asp:Control ID="name" runat="server"></asp:Control>

前缀asp是必须项,control表示控件类型,ID是控件的唯一标识,页面中不能重复,runat也是固有属性,其值为"server";根据实际情况,还可以添加其他的属性。例如下面的页面中,包含有两个TextBox控件、一个按钮控件、一个Label控件:

<form id="form1" runat="server">
<div>        

    用户名:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br />
    密码:<asp:TextBox ID="TextBox2" runat="server" TextMode="Password"></asp:TextBox><br />
    <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="确定"  Width="56px" /><br />
    <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>    
</div>
</form>

按钮事件的处理代码,结合Session对象进行了登录验证:

protected void Button1_Click(object sender, EventArgs e)
 {

       if( ( TextBox1.Text.CompareTo("admin") == 0 ) && ( TextBox2.Text.CompareTo("hubwiz") ==0 ) )
       {
          Session["login"] = true;
          Response.Redirect("mainframe.aspx");
       }
       else
       {
            Label1.Text = " 用户名或者密码错误!";
       }
 }

Web控件的种类繁多,每个版本都在更新,这里不再一一介绍各个控件的属性和用法;通过在编程中学习使用控件,是比较便捷的方法,本教程将以一个登录界面的例子来展示一下常用几个控件的使用,希望学员能够仔细查看例子代码。

查看WebForm1.aspx、WebForm1.aspx.cs、mainframe.aspx、Global.asax文件,查看事件的具体处理程序,体会Web服务器控件的使用和Session对象的生命期。