看到一个网友,有论坛上问及,动态的生成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中使用文本框的值动态生成控件的方法的相关知识,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。