Установить текст asp:LinkButton в разметке

Как можно было бы установить текст ASP.NET LinkButton, как показано ниже:

<asp:LinkButton id="LinkButton_Select" runat="server" Text='
<p><%# DataBinder.Eval(Container.DataItem, "Start")%></p>&nbsp;
<p><%# DataBinder.Eval(Container.DataItem, "End")%></p>
'/>

6 ответов

Решение

Попробуй это

<asp:LinkButton id="LinkButton_Select" runat="server" Text='<%# "<p>"+ DataBinder.Eval(Container.DataItem, "Start")+"</p>&nbsp;<p>"+DataBinder.Eval(Container.DataItem, "End")+"</p>"%>'/>

Почему бы просто не сделать следующее:

<p><asp:LinkButton id="LinkButton_Select" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "Start")%>'/><p>
<p><asp:LinkButton id="LinkButton_Select2" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "End")%>'/><p>

Я нашел этот ответ, который является самым простым:

Text = '<% # "

"+ Eval (" Старт ") +"

"+ Eval (" Конец ") +"

"

Спасибо всем!

Это сработало для меня, установить значение атрибута текста в загрузке страницы.

Пример:

yourpage.aspx

<asp:Button ID="yourButtonId" runat="server" OnClick="StartEvent" />

yourpage.aspx.cs

protected void Page_Load(Object sender, EventArgs e)
{
    // Set Text asp:Button
    yourButtonId.Text = "Your text";
}

Ваш код потерпит неудачу, потому что на runat="server тег, каждый атрибут должен быть полностью '<%# %>' раздел или нет совсем. Вы не можете использовать <%# %> для части этого и простого текста для остальных. @StrouMfios показал способ обойти это с помощью string.Format, но есть еще одна проблема - при преобразовании в HTML вы получите <a> тег, содержащий <p> теги, что является незаконным. Если разделение на две отдельные кнопки ссылок не работает, единственный способ сделать это легально - использовать <span> теги, предназначенные для отображения: блок с дополнительным интервалом.

Попробуй что-то вроде

<asp:LinkButton id="LinkButton_Select" runat="server" Text='<%# string.Format("<p>{0}</p>&nbsp;<p>{1}</p>",DataBinder.Eval(Container.DataItem, "Start"),DataBinder.Eval(Container.DataItem, "End")) %>'/> 
Другие вопросы по тегам