ایجاد کنترل Textbox در زمان اجرا و اعتبارسنجی آنها به همراه خواندن و نمایش محتوای آنها

چهارشنبه 27 اسفند 1393

در این مقاله قصد داریم نحوه ایجاد textbox , اعتبار سنجی , خواندن محتوا و نمایش مقدار 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 :" + " &nbsp;&nbsp;"));
            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();
        }
        
    }
فایل های ضمیمه

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید