ASP.NET элемент управления для визуализации <div> - PullRequest
33 голосов
/ 15 апреля 2011

Элемент управления Label в ASP.NET, похоже, отображает теги <span>, но есть ли серверный элемент управления для отображения HTML в пределах <div>?

Конечно, я мог бы установить display: block, и это могло бы выглядеть так же, но я бы предпочел не вкладывать div в промежутки. Также я бы предпочел не использовать <%= MyVariable %>, потому что это может плохо работать на постбэках.

Любые предложения, пожалуйста?

Ответы [ 6 ]

55 голосов
/ 15 апреля 2011

Конечно: ASP.NET имеет встроенный элемент управления под названием Panel!

И вы можете использовать его следующим образом:

<asp:Panel ID="myPanel" runat="server">
    <!-- Other markup here like client and server controls/elements -->
</asp:Panel>
27 голосов
/ 15 апреля 2011

Я думаю, вам нужно HtmlGenericControl класс. Он имеет конструктор, который принимает строковую переменную, которая инициализирует новый экземпляр класса HtmlGenericControl с указанным тегом:

var div = new HtmlGenericControl("div");

Он также имеет свойства InnerHtml и InnerText (вы упомянули это в комментарии к предыдущему ответу).

8 голосов
/ 15 апреля 2011
5 голосов
/ 09 декабря 2015

Попробуйте это:

<div class="myclass">
<asp:Literal ID="mytext" runat="server"></asp:Literal>
</div>

Установите текст внутри Literal, который отображается без HTML-тега

2 голосов
/ 09 января 2013
<asp:Panel>
<div id="NoRecords" runat="server" visible="false">No records are available.</div>
</asp:Panel>

Код позади

 protected void MyRepeater1_PreRender(object sender, EventArgs e)
{
    if (MyRepeater1.Items.Count == 0)
    {
        NoRecords.Visible = true;
    }
    else
    {
        NoRecords.Visible = false;
    }
}
0 голосов
/ 20 ноября 2015
div runat="server" id="myserversideDiv" 

мой внутренний текст здесь. Он имеет внутренний текст и внутреннее свойство html, а также большую часть свойства элемента управления сервером asp.net. Попробуйте это.

...