ユーザーの応答に応じて動的テキストボックス (最大 5-10 ) を生成する必要があります。それで、パフォーマンスに関してそれを行うための最良の方法は何でしょうか、速度が関係しています。
1187 次
3 に答える
0
これは非常に役立つリンクであり
、ここからリンクする理由を説明しています
- 常に Page_PreInit() にダイナミック コントロールを追加します。
- 動的にロードするときは常に ID を割り当てます
例えば
protected void Page_PreInit(object sender, EventArgs e)
{
Control c= LoadControl("./WebUserControl2.ascx");
i=i+1;
c.ID= i.ToString();
PlaceHolder1.Controls.Add(c);
}
また
protected void Page_PreInit(object sender, EventArgs e)
{
LinkButton button1 = new LinkButton();
button1.ID = "button1"
button1.Text = "button1"
PlaceHolder1.Controls.Add(button1);
}
于 2013-10-09T05:07:27.780 に答える
0
int n=5;
for (int i=0;i<n;i++)
{
TextBox MyTextBox=new TextBox();
//Assigning the textbox ID name
MyTextBox.ID = "tb" +""+ ViewState["num"] + i;
MyTextBox.Width = 540;
MyTextBox.Height = 60;
MyTextBox.TextMode = TextBoxMode.MultiLine;
this.Controls.Add(MyTextBox);
}
MVC の場合、このリンクは役立つかもしれません... http://www.codeproject.com/Articles/434886/Dynamically-adding-controls-on-a-hierarchical-stru
于 2013-10-09T05:08:43.887 に答える
0
この方法を試してください
for (int j = 0; j < 10; j++)
{
//Create Dynamic textboxes with required field validator .
TextBox tbChildFirstName = new TextBox();
Label lblChildFirstName = new Label();
lblChildFirstName.ID = "lblChildFirstName" + j;
lblChildFirstName.Text = "Children FirstName";
lblChildFirstName.Width = 200;
lblChildFirstName.SkinID = "Outlabel";
tbChildFirstName.ID = "txtChildFirstName" + j;
tbChildFirstName.Text = "Hi hello";
pnlChildDetail.Controls.Add(lblChildFirstName);
pnlChildDetail.Controls.Add(tbChildFirstName);
RequiredFieldValidator rqf = new RequiredFieldValidator();
rqf.ID = "rqf" + i;
pnlChildDetail.Controls.Add(rqf);
rqf.ControlToValidate = "txtChildFirstName" + j;
rqf.ErrorMessage = "Children FirstName is required";
rqf.Display = ValidatorDisplay.Dynamic;
rqf.ValidationGroup = "EligibilityCheck";
rqf.SetFocusOnError = true;
rqf.Text = "*";
tbChildFirstName.Attributes.Add("runat", "server");
pnlChildDetail.Controls.Add(GetLiteral("<br/>"));
pnlChildDetail.Controls.Add(GetLiteral("<br/>"));
}
public Literal GetLiteral(string text)
{
Literal rv = default(Literal);
rv = new Literal();
rv.Text = text;
return rv;
}
Aspx
<asp:Panel ID="pnlChildDetail" Style="text-align: left; padding-left: 10px" Width="100%"
runat="server">
</asp:Panel>
ダイナミック テキスト ボックス フォーム データベースのデータ カウントの作成とダイナミック テキスト ボックスの値を取得する方法の詳細については、ブログを参照してください。
于 2013-10-09T05:15:03.330 に答える