Установить текст asp:LinkButton в разметке
Как можно было бы установить текст ASP.NET LinkButton, как показано ниже:
<asp:LinkButton id="LinkButton_Select" runat="server" Text='
<p><%# DataBinder.Eval(Container.DataItem, "Start")%></p>
<p><%# DataBinder.Eval(Container.DataItem, "End")%></p>
'/>
6 ответов
Попробуй это
<asp:LinkButton id="LinkButton_Select" runat="server" Text='<%# "<p>"+ DataBinder.Eval(Container.DataItem, "Start")+"</p> <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> <p>{1}</p>",DataBinder.Eval(Container.DataItem, "Start"),DataBinder.Eval(Container.DataItem, "End")) %>'/>