2011-02-03 131 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>