Asp.net中使用文本框的值動(dòng)態(tài)生成控件的方法
看到一個(gè)網(wǎng)友,有論壇上問(wèn)及,動(dòng)態(tài)的生成checkbox控件,在文本框中輸入一個(gè)“花”字,點(diǎn)一下“生成”按鈕,就會(huì)在下面生成一個(gè)checkbox,它的text屬性是“花”。再輸入一個(gè)“鳥(niǎo)”,點(diǎn)一下按鈕,就會(huì)生成第二個(gè)checkbox控件,text屬性是“鳥(niǎo)”...
Insus.NET的解決方法很簡(jiǎn)單,就是每次在文本框輸入的值都存起來(lái),然后把這些數(shù)據(jù)綁定至一個(gè)CheckBoxList控件上就行了。
詳細(xì),先創(chuàng)建一個(gè)對(duì)象:
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;
}
}
}
創(chuàng)建一個(gè)實(shí)體,這個(gè)實(shí)體你可以把它開(kāi)發(fā)成可以操作性,如添加,編輯,更新,刪除或是獲取數(shù)據(jù)集,等等...
在本例中,Insus.NET只實(shí)添加以及獲取數(shù)據(jù)的兩個(gè)方法:
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;
}
}
}
}
萬(wàn)事俱備,只差A(yù)SPX的實(shí)現(xiàn)了,創(chuàng)建一個(gè)aspx的網(wǎng)頁(yè):
在ASPX.cs代碼頁(yè)中,你可以實(shí)現(xiàn)所需要的功能:
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;
}
}
}
你也許覺(jué)得很復(fù)雜,因?yàn)樯嫒氪鎯?chǔ)數(shù)據(jù)的問(wèn)題。如果你把數(shù)據(jù)直接存入數(shù)據(jù)庫(kù)的話,你可以在上面#6步中把填寫(xiě)的值存入數(shù)據(jù)庫(kù)中,在#4步中,去讀取數(shù)據(jù)庫(kù)的數(shù)據(jù)綁定給CheckBoxList控件即可。
以上所述是小編給大家介紹的Asp.net中使用文本框的值動(dòng)態(tài)生成控件的方法的相關(guān)知識(shí),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
一步步打造簡(jiǎn)單的MVC電商網(wǎng)站BooksStore(2)
這篇文章主要和大家一起一步步打造一個(gè)簡(jiǎn)單的MVC電商網(wǎng)站,MVC電商網(wǎng)站BooksStore第二篇,添加分類(lèi)導(dǎo)航、加入購(gòu)物車(chē),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04
通過(guò)Web Service實(shí)現(xiàn)IP地址查詢功能的示例
下面小編就為大家分享一篇通過(guò)Web Service實(shí)現(xiàn)IP地址查詢功能的示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2017-12-12
TreeNodeCheckChanged事件觸發(fā)方法代碼實(shí)例
這篇文章主要介紹了TreeNodeCheckChanged事件觸發(fā)方法代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-12-12
.NET6創(chuàng)建Windows服務(wù)的實(shí)現(xiàn)步驟
本文主要介紹了.NET6創(chuàng)建Windows服務(wù)的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06






