在 GridView 中动态显示 LiteralControl

发布于 2024-12-06 22:57:39 字数 556 浏览 2 评论 0原文

我创建了一个 html 并将其设置为文字控件。 然后我尝试将这个literalControl 插入到转发器的ItemTemplate 中。

但是当我这样做时,它被视为“System.Web.UI.LiteralControl”文本,而不是里面的html。

这是代码:

<asp:Repeater>
    //SomeColumns
    <ItemTemplate>
        <%# GetPriorityBox(DataBinder.Eval(Container.DataItem, "StartDate"),
                           DataBinder.Eval(Container.DataItem, "EndDate") %>
    </ItemTemplate>
</asp:Repeater>

从浏览器中可以看到如下:

SomeColumn | SomeColumn | System.Web.UI.LiteralControl

I create an html and set it to a literalControl.
Then I'm trying to insert this literalControl in a repeater's ItemTemplate.

But when I do this, it is seen as "System.Web.UI.LiteralControl" text, not the html inside.

Here's the code:

<asp:Repeater>
    //SomeColumns
    <ItemTemplate>
        <%# GetPriorityBox(DataBinder.Eval(Container.DataItem, "StartDate"),
                           DataBinder.Eval(Container.DataItem, "EndDate") %>
    </ItemTemplate>
</asp:Repeater>

It is seen from the browser like:

SomeColumn | SomeColumn | System.Web.UI.LiteralControl

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

皓月长歌 2024-12-13 22:57:39

只需将标记直接添加到 ItemTemplate 中即可。更改您的 GetPriorityBox 方法以返回 LiteralControl 的 Text 属性。

Just add the markup directly to the ItemTemplate. Change your GetPriorityBox method to return the Text property of the LiteralControl.

北城半夏 2024-12-13 22:57:39

将 .Text 添加到该语句的末尾...它不会使用 <%# %> 表示法注入控件。它只会注入标记,因此您只需注入文本。如果您希望注入控件,请点击 ItemDataBound 事件,然后以编程方式添加控件。

HTH。

Add a .Text to the end of that statement... it won't inject a control using <%# %> notation. It will only inject markup, so you have to inject the text only. If you want the control injected, tap into ItemDataBound event, and programmably add the control.

HTH.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文