Adding
dynamically between controls asp.net

2019-01-25 01:47发布

I'm listing some controls at my web page dynamically, either I'm adding newline with Label's.

Label newLine = new Label();newLine.Text = "<br/>"; myPanel.Controls.Add(newLine);

How can I do it in a different way?

3条回答
萌系小妹纸
2楼-- · 2019-01-25 01:59

I would suggest that you don't use
at all. Use CSS to display your controls. display:block on your elements will work just fine. Less messy!

查看更多
3楼-- · 2019-01-25 02:11
myPanel.Controls.Add(new LiteralControl("<br />"));
查看更多
冷血范
4楼-- · 2019-01-25 02:16

My problem: Add a text to a panel indicating a date range. The text should be placed below an hyperlink.

The CSS solution:

A. Create the CSS class (place it on your page or into a CSS file)

.dateRange
{
    display:block;
}

B. Create controls and set the proper CSS class (.CssClass property)

//1. Create the link
LinkButton _btnTitle = new LinkButton();
_btnTitle.Text = Request.QueryString["name"];
_btnTitle.OnClientClick = "history.go(-1); return false;";
_btnTitle.ToolTip = Request.QueryString["name"];
_btnTitle.CssClass = "title";

//2. Add the link to the container
pnlFindTech.Controls.Add(_btnTitle);  

//3. Create the label (text)    
Label lblDate = new Label();
lblDate.Text = " [ From " + txtDateFrom.Text + " To " + txtDateTo.Text + " ] ";
lblDate.CssClass = "dateRange"; //Here is the trick

//4. Add the label to the container
pnlFindTech.Controls.Add(lblDate);

The final output looks like the this:

enter image description here

Sources:

查看更多
登录 后发表回答