我想知道如何在asp.net C#中为动态文本框添加位置!

时间:2016-06-08 04:29:17

标签: c# asp.net

我想指定动态发生的文本框的位置,但我无法将其作为"位置"财产没有工作说我缺少一些名称空间。

这是我的代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;  
using System.Web.UI.WebControls;
using System.Drawing;




protected void freq_txtbox(object sender, EventArgs e)
    {
        int num = Convert.ToInt32(e_freq.Text);
        int c = 0;
        for (c = 0; c <= num; c++)
        {
            TextBox txtRun = new TextBox();
            txtRun.Location= new Point(100,20*c);
            this.Controls.Add(txtRun);

        }      
    }

4 个答案:

答案 0 :(得分:1)

不是使用动态创建的TextBox控件添加到 webform ,而是通过分配它来使像asp.net Paneldiv这样的容器成为服务器可访问控件{{ 1}}并将id属性设置为&#34; server&#34;

runat

html中div的声明就像

divId.Controls.Add(txtRun);

答案 1 :(得分:1)

Location中没有属性WebForms TextBox

因此,您可以为每个文本框创建一个container div,并为每个div设置样式以调整div的位置。

for (c = 0; c <= num; c++)
{
  TextBox txtRun = new TextBox();
  HtmlGenericControl div = new HtmlGenericControl("div");
  div.Controls.Add(txtRun);
  div.Attributes.Add("class", "txtContainer");
  divContainer.Controls.Add(div);

}     

这里是围绕文本框的容器div的样式

<style>
   .txtContainer {
       width: 15%;
       float:left;
       padding:10px;
   }
</style>

这是主要的容器div

<div runat="server" id="divContainer">
</div>

答案 2 :(得分:0)

这是用于添加任何文本框的WinForm样式。 您可以创建用于添加文本框的jQuery代码

在这里输入代码

function AddNewTextBoxes(noOfTextBoxNeeded){
   var varHtmlTextbox="";
   for(var i=0;i<noOfTextBoxNeeded;i++){
       varHtmlTextbox = varHtmlTextbox + "<input type='text' /> <br/>";  
   }

   $("#DivToAppenTextboxes").append(varHtmlTextbox);
}

希望这会对你有所帮助。

答案 3 :(得分:0)

您必须使用div来添加控件。 假设

客户端

<style>
.btnClass{
//your css is going to implement here whatever you want.
}
</style>

<div id="dvId" runat="server"></div>

服务器端代码是什么,这里我们需要将css应用于将在Div控制器中添加的按钮:

 for (c = 0; c <= num; c++)
        {
            TextBox txtRun = new TextBox();
            txtRun.Attributes.Add("class", "btnClass");
            dvId.Controls.Add(txtRun);
        }