国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#后臺創建控件并獲取值的方法

2020-01-24 02:09:46
字體:
來源:轉載
供稿:網友

本文實例講述了C#后臺創建控件并獲取值的方法。分享給大家供大家參考。具體實現方法如下:

前臺代碼:

復制代碼 代碼如下:
<form id="form1" runat="server">
    <div>
        <div class="item">
            Please input a number:
            <asp:TextBox runat="server" CssClass="item" ID="txtTextCount"></asp:TextBox>
          
            <asp:Button runat="server" ID="btnCreate" Text="Create TextBox List" ValidationGroup="CreateTextBox"
                OnClick="btnCreate_Click" />  
            <asp:Button runat="server" ID="btnOK" Text="獲取控件值" ValidationGroup="ShowListContent"
                OnClick="btnOK_Click" />
        </div>
        <div runat="server" id="divControls" class="item">
        </div>
        <div runat="server" id="divMessage">
        </div>
    </div>
</form>

后臺代碼:

復制代碼 代碼如下:
protected void Page_Load(object sender, EventArgs e)
    {
        if (this.IsPostBack)
        {
            int txtCount = int.Parse(txtTextCount.Text);

            // 注意:每次PostBack時,都需要重新動態創建TextBox
            CreateTextBoxList(txtCount);
        }
    }
    ///<summary> 

    /// Create textbox list
    ///</summary>
    ///<param name="num">textbox list count</param>
    private void CreateTextBoxList(int num)
    {
        HtmlGenericControl div;
        HtmlGenericControl span;
        TextBox txt;
        //RegularExpressionValidator rev;

        for (int i = 0; i < num; i++)
        {
            //創建div
            div = new HtmlGenericControl();
            div.TagName = "div";
            div.ID = "divTextBox" + i.ToString();
            div.Attributes["class"] = "item2";

            //創建span
            span = new HtmlGenericControl();
            span.ID = "spanTextBox" + i.ToString();
            span.InnerHtml = "Url Address" + (i + 1).ToString() + ":";

            //創建TextBox
            txt = new TextBox();
            txt.ID = "txt" + i.ToString();
            txt.CssClass = "input";

            //創建格式驗證控件,并且將其關聯到對應的TextBox
            //rev = new RegularExpressionValidator();
            //rev.ID = "rev" + i.ToString();
            //rev.ControlToValidate = txt.ID;
            //rev.Display = ValidatorDisplay.Dynamic;
            //rev.ValidationGroup = "ShowListContent";
            //rev.ValidationExpression = @"(http(s)?://)?([/w-]+/.)+[/w-]+(/[/w- ./?%&=]*)?";
            //rev.ErrorMessage = "Invalid url Address!";

            //添加控件到容器
            div.Controls.Add(span);
            div.Controls.Add(txt);
            //div.Controls.Add(rev);
            divControls.Controls.Add(div);
        }
    }

    protected void btnCreate_Click(object sender, EventArgs e)
    {
        txtTextCount.Enabled = false;
        btnCreate.Enabled = false;
    }

    protected void btnOK_Click(object sender, EventArgs e)
    {
        TextBox txt;
        HtmlGenericControl span;
        StringBuilder sbResult = new StringBuilder();
        int txtCount = int.Parse(txtTextCount.Text);

        //遍歷獲取動態創建的TextBox們中的Text值
        for (int i = 0; i < txtCount; i++)
        {
            //注意:這里必須通過上層容器來獲取動態創建的TextBox,才能獲取取ViewState內容
            txt = divControls.FindControl("txt" + i.ToString()) as TextBox;

            if (txt != null && txt.Text.Trim().Length > 0)
            {
                sbResult.AppendFormat("Url Address{0}: {1}.<br />", i + 1, txt.Text.Trim());
            }
        }
        //遍歷獲取動態創建的TextBox們中的Text值
        for (int i = 0; i < txtCount; i++)
        {
            //注意:這里必須通過上層容器來獲取動態創建的TextBox,才能獲取取ViewState內容
            span = divControls.FindControl("spanTextBox" + i.ToString()) as  HtmlGenericControl ;

            if (span != null && span.InnerText.Trim().Length > 0)
            {
                sbResult.AppendFormat("Url Address{0}: {1}.<br />", i + 1, span.InnerText.Trim());
            }
        }
        divMessage.InnerHtml = sbResult.ToString();
}

希望本文所述對大家的C#程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大名县| 彰武县| 旅游| 荣成市| 章丘市| 柞水县| 博野县| 奉节县| 玉山县| 大石桥市| 蓬安县| 芜湖县| 红河县| 桐城市| 合水县| 长治市| 丰城市| 沅陵县| 金平| 彭山县| 沙田区| 塘沽区| 宁安市| 青冈县| 车险| 乌兰察布市| 鸡西市| 简阳市| 桦南县| 镇江市| 哈尔滨市| 缙云县| 汝城县| 青州市| 大兴区| 广昌县| 赤水市| 化州市| 安丘市| 乌兰察布市| 新昌县|