2011-02-03 120 views
1

我正在添加一系列的asp:literal和asp:textbox控件到代码中的面板,如下所示(最终目标是仅添加一些控件,具体取决于用户):控制动态添加控件在asp中的布局:面板

With Me.pnl1 
     Controls.Add(FirstLiteral) 
     Controls.Add(FirstTxtBox) 
     Controls.Add(SecondLiteral) 
     Controls.Add(SecondTxtBox) 
     Controls.Add(ThirdLiteral) 
     Controls.Add(ThirdTxtBox) 
    End With 

的目的是对自己的行各控制,但我得到一个混合了布局就像这样:

FirstLiteral 
FirstTxtbox SecondLiteral 
SecondTxtbox thirdLiteral 
thirdtxtbox 

如何控制面板的呈现方式,最好不必创建自定义控件?

感谢, 帕特里克

回答

4

对于添加的每个控件,您必须添加类似

pnl.Controls.Add(new LiteralControl("<br/>")); 
0

你可以把在文字标记:

Private Sub doSearchPanel() 
     LitTxtUsername.Text = GetLocalResourceObject("TxtUsernameResource1.text") + "<br/>" 
     ltNameSearch.Text = "<br/>" + GetLocalResourceObject("ltNameSearch.text") + "<br/>" 
     ltGroupSearch.Text = "<br/>" + GetLocalResourceObject("ltGroupSearch.text") + "<br/>" 
     'With Me.pnlSearch 
     Me.pnlSearch.Controls.Add(Me.LitTxtUsername) 
     Me.pnlSearch.Controls.Add(Me.txtMatch) 
     Me.pnlSearch.Controls.Add(Me.ltNameSearch) 
     Me.pnlSearch.Controls.Add(Me.txtNameSearch) 
     Me.pnlSearch.Controls.Add(Me.ltGroupSearch) 
     Me.pnlSearch.Controls.Add(Me.txtGroupSearch) 
     'End With 
    End Sub 
0

你可以添加一个“关闭”常量,其中包含每个文本框后<br /> 或者你也可以添加到“打开“在每行之前的文字(<div>)和一个关闭之一(</div>