如何设置 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>
'/>
如何设置 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>
'/>
试试这个
<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>
尝试类似的东西
<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")) %>'/>
您的代码将失败,因为在runat="server
标签上,每个属性必须完全是一个'<%# %>'
部分,或者根本不是。您不能将<%# %>
其用于其中的一部分,而将纯文本用于其余部分。@StrouMfios 展示了使用 string.Format 的方法,但还有另一个问题 - 当转换为 HTML 时,您最终会得到一个<a>
包含标签的<p>
标签,这是非法的。如果将其拆分为两个单独的链接按钮对您不起作用,那么您可以合法地做到这一点的唯一另一种方法是使用<span>
样式为 display:block 的标签,并带有额外的间距。
我发现这个答案是最简单的:
文本='<%#"
"+ 评估("开始") + "
" + 评估("结束")+"
"
谢谢大家!
这对我有用,在页面加载中设置属性文本的值。
例子:
你的页面.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";
}