我正在使用asp.net的转发器控件来绑定数据源。我添加了标签元素作为模板项。我想将查询字符串从我的表设置为标记的href地址。如何在设计中做到这一点?
感谢
答案 0 :(得分:0)
首先,您有两种方法直接在项目模板中
<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);
}
数据项是表示DataSource的单个项目。如果您使用DataTable
,则很可能是DataRow。它也可以是自定义对象或匿名类型。在这里,我假设您有一个名为YourType
的对象,其属性为KeyField