zoukankan      html  css  js  c++  java
  • Asp.net中使用文本框的值动态生成控件的方法

    这篇文章主要介绍了Asp.net中使用文本框的值动态生成控件的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下

    看到一个网友,有论坛上问及,动态的生成checkbox控件,在文本框中输入一个“花”字,点一下“生成”按钮,就会在下面生成一个checkbox,它的text属性是“花”。再输入一个“鸟”,点一下按钮,就会生成第二个checkbox控件,text属性是“鸟”...

    Insus.NET的解决方法很简单,就是每次在文本框输入的值都存起来,然后把这些数据绑定至一个CheckBoxList控件上就行了。

    详细,先创建一个对象:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    /// <summary>
    /// Summary description for Letter
    /// </summary>
    namespace Insus.NET
    {
    public class Letter
    {
    private string _Name;
    public string Name
    {
    get { return _Name; }
    set { _Name = value; }
    }
    public Letter()
    {
    }
    public Letter(string name)
    {
    this._Name = name;
    }
    }
    }

    创建一个实体,这个实体你可以把它开发成可以操作性,如添加,编辑,更新,删除或是获取数据集,等等...

    在本例中,Insus.NET只实添加以及获取数据的两个方法:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    /// <summary>
    /// Summary description for LetterEntity
    /// </summary>
    namespace Insus.NET
    {
    public class LetterEntity
    {
    private List<Letter> _Letter = new List<Letter>();
    public void Add(Letter l)
    {
    this._Letter.Add(l);
    }
    public IEnumerable<Letter> Letters
    {
    get {
    return this._Letter;
    }
    }
    }
    }
    万事俱备,只差ASPX的实现了,创建一个aspx的网页:
     
    在ASPX.cs代码页中,你可以实现所需要的功能:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using Insus.NET;
    public partial class Default2 : System.Web.UI.Page
    {
    LetterEntity le = new LetterEntity();
    protected void Page_Load(object sender, EventArgs e)
    {
    if (!IsPostBack)
    {
    Data_Binding();
    }
    le = TemporaryLetters;
    }
    private void Data_Binding()
    {
    this.CheckBoxList1.DataSource = le.Letters;
    this.CheckBoxList1.DataTextField = "Name";
    this.CheckBoxList1.DataBind();
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
    Letter l = new Letter();
    if (!string.IsNullOrEmpty(this.TextBox1.Text.Trim()))
    l.Name = this.TextBox1.Text.Trim();
    le.Add(l);
    TemporaryLetters = le;
    Data_Binding();
    }
    public LetterEntity TemporaryLetters
    {
    get
    {
    if (Session["LetterEntity"] == null)
    return new LetterEntity();
    else
    return (LetterEntity)Session["LetterEntity"];
    }
    set
    {
    Session["LetterEntity"] = value;
    }
    }
    }

    你也许觉得很复杂,因为涉入存储数据的问题。如果你把数据直接存入数据库的话,你可以在上面#6步中把填写的值存入数据库中,在#4步中,去读取数据库的数据绑定给CheckBoxList控件即可。

    以上所述是小编给大家介绍的Asp.net中使用文本框的值动态生成控件的方法的相关知识,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

  • 相关阅读:
    闲谈随笔以及对自己的心里暗示
    java利用Scanner获取键盘输入
    【积累】发送验证码按钮倒计时js
    【积累】validate验证框架的使用
    重写toString()方法来描述一个类
    【java基础】 合并两个类型相同的list
    java单例类/
    基本类型的包装类
    强转
    【java基础】面向对象的三大特征---多态
  • 原文地址:https://www.cnblogs.com/sjqq/p/6439273.html
Copyright © 2011-2022 走看看