如何设置从数据源到 的查询字符串标签?

发布于 2024-12-11 19:12:43 字数 97 浏览 0 评论 0原文

我使用来自 asp.net 的转发器控件来绑定数据源。我已添加标签元素作为模板项。我想将表中的查询字符串设置为标签的 href 地址。在设计中如何做到这一点?

谢谢

I'm using repeater control from asp.net for binding datasource. I have added tag element as a template item. I want to set the query string from my table to the href address of the tag. How to do this in the designing?

thanks

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

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

发布评论

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

评论(1

苍白女子 2024-12-18 19:12:43

这里有两种方法,首先是直接在项目模板中

<ItemTemplate>
    <a href="/Folder/Item.aspx?ID=<%# Eval("KeyField") %>">Text</a>
</ItemTemplate>

或使用超链接

<ItemTemplate>
    <asp:HyperLink ID="myLink" runat="server" Text="Text" />
</ItemTemplate>

,而且您还应该在转发器中的 ItemDataBound 事件的逻辑后面添加一些代码

if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) {
    var myLink = e.Item.FindControl("myLink") as HyperLink;
    myLink.NavigateUrl = String.Format("~/Folder/Item.aspx?ID={0}", (e.Item.DataItem as YourType).KeyField);
}

数据项是表示数据源的单个项目。如果您使用的是DataTable,那么它很可能是DataRow。它也可以是自定义对象或匿名类型。这里我假设您有一个名为 YourType 的对象,其属性为 KeyField

You have two approaches here first is directly in the item template

<ItemTemplate>
    <a href="/Folder/Item.aspx?ID=<%# Eval("KeyField") %>">Text</a>
</ItemTemplate>

Or using hyperlink

<ItemTemplate>
    <asp:HyperLink ID="myLink" runat="server" Text="Text" />
</ItemTemplate>

And also you should add some code behind logic on ItemDataBound event in the repeater

if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) {
    var myLink = e.Item.FindControl("myLink") as HyperLink;
    myLink.NavigateUrl = String.Format("~/Folder/Item.aspx?ID={0}", (e.Item.DataItem as YourType).KeyField);
}

Data item is a single item that represents the DataSource. If your are using DataTable it is most likely will be the DataRow. It also can be a custom object or an anonymous type. Here I'm assuming that you have an object named YourType with the property KeyField

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