控制动态添加控件在asp中的布局:面板
问题描述:
我正在添加一系列的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
如何控制面板的呈现方式,最好不必创建自定义控件?
感谢, 帕特里克
答
对于添加的每个控件,您必须添加类似
pnl.Controls.Add(new LiteralControl("<br/>"));
答
你可以把在文字标记:
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
答
你可以添加一个“关闭”常量,其中包含每个文本框后<br />
或者你也可以添加到“打开“在每行之前的文字(<div>
)和一个关闭之一(</div>
)