Я пытаюсь создать меню со следующим кодом. Но я не могу выяснить, как заставить каждый LinkButton появляться на отдельных строках.
MenuPanel.Controls.Clear();
foreach (FormList f in forms)
{
if (f.IsActive == "y")
{
FormUserControl fc = (FormUserControl)LoadControl(f.StartControl);
LinkButton lb = new LinkButton();
lb.Text = fc.Title;
MenuPanel.Controls.Add(lb);
// I want some sort of line break here
}
}
Используйте класс LiteralControl
, чтобы вставить разрыв линии ...
MenuPanel.Controls.Add(new LiteralControl("<br />"));
Или используйте CSS, чтобы сделать ваши ссылки на элементы блока-уровня ...
#menu a { display: block; }
Вы могли бы сделать это:
HtmlGenericControl div = new HtmlGenericControl("div");
div.Text = " ";
MenuPanel.Controls.Add(div);
Я знаю, что этот ответ уже принят, но я хотел бы предложить другой вариант. Если вы хотите вертикальный список элементов, то может стоить использовать элемент UL или OL. Это означает, что вам не нужно использовать страшные бирки BR или какие-либо хаки, чтобы получить то, что вам нужно.