zoukankan      html  css  js  c++  java
  • asp.net服务器控件与组件开发(一)

    1、ASP.NET中开发服务器控件有两种方法:自定义控件与web用户控件

    本次来讲web用户控件

    2、注意点如下:

    (1)       创建web用户控件是一个扩展名为.ascx的文本文件,在文本文件顶部添加@Control指令,并通过Language指定开发语言。asp.net页面使用的是@Page指令。

    (2)       向文本文件中添加html标记文本和asp.net服务器控件。可以添加除html、body、form之外的任何html标记。这是因为用户控件不能单独使用,必须作为Web页面的一部分使用。

    下面是详细例子:开发一个登陆的自定义用户控件。Login.ascx

    <%@ Control Language="C#" AutoEventWireup="true" CodeFile="MyWebUserControl.ascx.cs" Inherits="MyWebUserControl" %>

    <div style="300px;height:200px;border:1px solid #999;">

     <h3 style="margin-left:10px;"><asp:Label ID="lblTitle" runat="server" Text="欢迎登陆" ></asp:Label></h3>

     <div style="margin-left:20px;margin-bottom:10px;">用户名:<asp:TextBox ID="txtUserName" Width="100px" runat="server"></asp:TextBox></div>

     <div style="margin-left:20px;margin-bottom:10px;">密&nbsp;&nbsp;码:<asp:TextBox ID="txtPwd" Width="100px" runat="server"></asp:TextBox></div>

     <div style="margin-left:20px;margin-bottom:10px;">性&nbsp;&nbsp;别:<asp:DropDownList ID="ddlSex" Width="100px" runat="server">

     <asp:ListItem Selected="True"  Value="男" Text="男"></asp:ListItem>

     <asp:ListItem Value="女" Text="女"></asp:ListItem>

     </asp:DropDownList></div>

     <div style="margin-left:20px;margin-bottom:10px;"><asp:Button ID="btnLogin" runat="server" Text="登陆" Width="80px" />&nbsp;&nbsp;<asp:Button ID="btnReset" runat="server" Text="取消登陆" Width="80px" /></div>

    </div>

    3、使用用户控件

    必须在使用用户控件的页面先注册,使用@Register 注册用户控件,然后设置该指令的TagPrefix、TagName和Src属性。TagPrefix表示标记前缀名,TagName表示标记名,Src为用户控件的路径。

    使用代码如下:

    <%@ Register TagPrefix="user" TagName="Login" Src="~/MyWebUserControl.ascx" %>

    <user:Login ID="login" runat="server" />

    4、设置用户控件的属性

    在Login.ascx文本中添加如下代码

    <script runat="server">

        //设置登陆头部显示文字属性

        public string LoginTitle

        {

            get { return lblTitle.Text; }

            set { lblTitle.Text = value; }

        }

        //设置用户名默认值

        public string UserName

        {

            get { return txtUserName.Text; }

            set { txtUserName.Text = value; }

        }

          //设置传入的Url地址

        private string url;

        public  string Url

        {

            get { return url; }

            set { url = value; }

        }

    </script>

    5、添加方法

    <script runat="server">

      //添加方法

        //取消登陆方法

        public void ResetLogin(object sender,EventArgs e)

        {

            txtUserName.Text = "";

            txtPwd.Text = "";

            return;

        }

       

        //登陆并跳转到指定页面,传递用户名和密码

        public void Login(object sender,EventArgs e)

        {

             //验证用户名和密码是否为空

            if (txtUserName.Text == "" || txtPwd.Text == "")

            {

                Page.RegisterStartupScript("ss", "用户名或者密码为空,请输入完全");

                return;

            }

            else

            {

                Response.Redirect(url+"?user="+txtUserName.Text+"&&pwd="+txtPwd.Text);

            }

        }

    </script>

    使用页面

       <user:Login ID="login" runat="server" LoginTitle="欢迎登陆怀化学院教务系统" UserName="luoxinhua" Url="TestLogin.aspx" />

  • 相关阅读:
    状态压缩dp未吃透の笔记
    洛谷blog传送门qwq
    线段树学习总结(Do not be the cheater)
    第三届NOI Online普及组线上比赛赛后总结
    第三届NOI Online入门组第三题 手表(watch)题解
    P1162 填涂颜色 题解(勿抄袭)
    4980:拯救行动 题解
    P1433 吃奶酪 题解(勿抄袭)
    Mysql-多表数据记录查询
    java-多线程
  • 原文地址:https://www.cnblogs.com/luodao1991/p/3100418.html
Copyright © 2011-2022 走看看