目前已实现:
<Columns> <asp:HyperLinkColumn
HeaderText="Select an Item"
DataNavigateUrlField="IntegerValue"
DataNavigateUrlFormatString="detailspage.aspx?id={0}"
DataTextField="PriceValue"
DataTextFormatString="{0:c}"
Target="_blank"/>
</Columns>
可是我想带多个参数,想如下,
<Columns> <asp:HyperLinkColumn
HeaderText="Select an Item"
DataNavigateUrlField="IntegerValue,Name"
DataNavigateUrlFormatString="detailspage.aspx?id={0}&name={1}"
DataTextField="PriceValue"
DataTextFormatString="{0:c}"
Target="_blank"/>
</Columns>
结果运行时,编译器把“IntegerValue,Name”当作一个字段了,告诉我找不到这样的字段。我想问,是我的写法不对还是只能带一个参数,有没有好点的办法?望高手指教!
<Columns> <asp:HyperLinkColumn
HeaderText="Select an Item"
DataNavigateUrlField="IntegerValue"
DataNavigateUrlFormatString="detailspage.aspx?id={0}"
DataTextField="PriceValue"
DataTextFormatString="{0:c}"
Target="_blank"/>
</Columns>
可是我想带多个参数,想如下,
<Columns> <asp:HyperLinkColumn
HeaderText="Select an Item"
DataNavigateUrlField="IntegerValue,Name"
DataNavigateUrlFormatString="detailspage.aspx?id={0}&name={1}"
DataTextField="PriceValue"
DataTextFormatString="{0:c}"
Target="_blank"/>
</Columns>
结果运行时,编译器把“IntegerValue,Name”当作一个字段了,告诉我找不到这样的字段。我想问,是我的写法不对还是只能带一个参数,有没有好点的办法?望高手指教!
你可以直接這樣寫:
<asp:TemplateColumn HeaderText="Column">
<ItemTemplate>
<asp:Hyperlink runat="server" Text='<%#Container.DataItem("column")%>'
NavigateUrl='xx.aspx?id=<%# DataBinder.Eval(Container.DataItem, "id"%>&name=<%# DataBinder.Eval(Container.DataItem, "Name"%>'
</ItemTemplate>
</asp:TemplateColumn>
HyperLink hlink=e.Item.Cells[2].Controls[0] as HyperLink;
if(hlink!=null){
//可以在这根据当前行绑定的数据项中的内容设置HyperLink的NavigateUrl属性,想加多少个参数都可以
}
}
if(e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem){
HyperLink hlink=e.Item.Cells[2].Controls[0] as HyperLink;
if(hlink!=null){
//可以在这根据当前行绑定的数据项中的内容设置HyperLink的NavigateUrl属性,想加多少个参数都可以
}
}
}
HeaderText="Select an Item"
DataNavigateUrlField="IntegerValue,Name"
DataNavigateUrlFormatString="<%# String.Format("detailspage.aspx?id={0}&name={1}",DataBinder.Eval(Container.DataItem, "id"),DataBinder.Eval(Container.DataItem, "name"))%>"
DataTextField="PriceValue"
DataTextFormatString="{0:c}"
Target="_blank"/>
</Columns>