ایجاد کنترل Textbox در زمان اجرا و اعتبارسنجی آنها به همراه خواندن و نمایش محتوای آنها
چهارشنبه 27 اسفند 1393در این مقاله قصد داریم نحوه ایجاد textbox , اعتبار سنجی , خواندن محتوا و نمایش مقدار Textbox را در زمان اجرا شرح دهیم .
برای ساخت textbox پویا و اعتبار سنجی آنها مانند زیر عمل میکنیم .
در ابتدا هنگامی که بر روی دکمه نمایش محتوای textbox کلیک می کنیم , پیغام "Not Empty" نشان داده میشود .
و هنگامی که textbox ها را تکمیل میکنیم , سپس دکمه "نمایش محتوای textbox "را کلیک می کنیم محتوای کنترل ها را خوانده و در زمان اجرا نمیش می دهد مانند تصویر زیر :
تگ html صفحه :
<div> <h3><a href="http://barnamenevisan.org/"> برنامه نویسان </a> </h3> <h1 >ایجاد کنترل TextBox پویا با اعتبارسنجی و خواندن و نمایش محتوای آنها </h1> <table > <tr> <td> <asp:Label ID="Label1" runat="server" Text="تعداد TextBox را وارد نمایید :"></asp:Label> <asp:TextBox ID="getvalue" runat="server" ></asp:TextBox> </td> </tr> <tr> <td> <asp:PlaceHolder ID="text" runat="server"></asp:PlaceHolder> </td> </tr> <tr> <td> <asp:Button ID="Create_TextBox" runat="server" Text="ایجاد - TextBox" OnClick="Create_TextBox_Click" /> <asp:Button ID="Selected_TextBox" runat="server" Text="نمایش محتوای TextBox" OnClick="Selected_TextBox_OnClick" /> </td> </tr> <tr> <td> <asp:PlaceHolder ID="Viewtextvalue" runat="server"></asp:PlaceHolder> </td> </tr> </table> </div>
کد های مربوط به codebehind صفحه :
private static int intCount = 0; protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { ViewState["TextBoxCreated"] = false; } } protected void Create_TextBox_Click(object sender, EventArgs e) { intCount = Convert.ToInt32(getvalue.Text); if (!Convert.ToBoolean(ViewState["TextBoxCreated"])) { DynamicTextBox(); } } protected void getvalue_TextChanged(object sender, EventArgs e) { intCount = Convert.ToInt32(getvalue.Text); } private void DynamicTextBox() { for (int i = 0; i < intCount; i++) { TextBox newtextbox = new TextBox(); // adding text box text.Controls.Add(new LiteralControl("Name :" + " ")); newtextbox.ID = "TextBox" + i.ToString(); newtextbox.ValidationGroup = "Validate"; text.Controls.Add(newtextbox); //validating Textbox RequiredFieldValidator req = new RequiredFieldValidator(); req.ID = "RequiredValidator" + i.ToString(); req.ControlToValidate = "TextBox" + i.ToString(); req.ErrorMessage = " * Not Empty"; req.SetFocusOnError = true; text.Controls.Add(req); text.Controls.Add(new LiteralControl("<br/><br/>")); } ViewState["TextBoxCreated"] = true; } public void DisplayTextbox_selected() { List<string> name = new List<string>(); foreach (Control ctr in text.Controls) { if (ctr is TextBox) { string value = ((TextBox) ctr).Text; name.Add(value); } } for (int i = 0; i < name.Count; i++) { Viewtextvalue.Controls.Add(new LiteralControl((i + 1) + " " + name[i])); Viewtextvalue.Controls.Add(new LiteralControl("<br /> <br/>")); } } protected override void LoadViewState(object savedState) { base.LoadViewState(savedState); if (Convert.ToBoolean(ViewState["TextBoxCreated"])) { DynamicTextBox(); } } protected void Selected_TextBox_OnClick(object sender, EventArgs e) { if (Convert.ToBoolean(ViewState["TextBoxCreated"])) { DisplayTextbox_selected(); } }
- ASP.net
- 4k بازدید
- 3 تشکر