Sign In| Join
Get Help:Ask a Question in our Forums|Report a Bug|More Help Resources
Last post Mar 01, 2013 02:42 AM by me_ritz
Member
146 Points
462 Posts
Feb 28, 2013 09:05 AM|LINK
Hi all
I have a gridview with the following TemplateField:
<asp:TemplateField HeaderText="title"> <ItemTemplate> <asp:HyperLink ID="lbl1" runat="server" Visible='<%# IIf(IsDBNull(Eval("desc")), true, false) %>' NavigateUrl="test.aspx" Target="_blank">Not Agreed</asp:HyperLink> <asp:HyperLink ID="lbl2" runat="server" Visible='<%# IIf(IsDBNull(Eval("desc")), false, true) %>' NavigateUrl="test.aspx" Target="_blank">Agreed</asp:HyperLink> </ItemTemplate> </asp:TemplateField>
This works greate, however I now need to pass paramenters as a queryString to these page links. The only way I know how to do this is:
<asp:HyperLinkField Visible='<%# IIf(IsDBNull(Eval("desc")), true, false) %>' DataNavigateUrlFields="IDNo" DataNavigateUrlFormatString="test?IDNo={0}" Target="_blank" Text="Not Agreed" />
But I am getting a databinding error. In my mind I need the TemplateField as I require the column header, and the link to appear along with the 'IsDBNull' visible
I'd be very grateful for any suggestions to how to overcome this?
All-Star
112180 Points
18257 Posts
Moderator
Feb 28, 2013 09:46 AM|LINK
NavigateUrl = '<%# Eval("IDNo", "test?IDNo={0}") %>'
31697 Points
6476 Posts
Feb 28, 2013 09:48 AM|LINK
Feb 28, 2013 10:02 AM|LINK
Thanks guys, I've applied what you've suggested:
<asp:HyperLink ID="lblAgreed" runat="server" Visible='<%# IIf(IsDBNull(Eval("DESC")), false, true) %>' NavigateUrl='<%# Eval("IDNo", "test?IDNo={0}") %>' Target="_blank">Agreed</asp:HyperLink>
but getting page not found - have I missed something?
(page along with query are correct)
Star
9337 Points
1447 Posts
Feb 28, 2013 10:19 AM|LINK
callan1 NavigateUrl='<%# Eval("IDNo", "test?IDNo={0}") %>'
NavigateUrl='<%# Eval("IDNo", "test?IDNo={0}") %>'
NavigateUrl='<%# Eval("IDNo", "test.aspx?IDNo={0}") %>'
Bold text : It should aspx page name ideally
Feb 28, 2013 10:41 AM|LINK
You're right - thanks
Feb 28, 2013 11:36 AM|LINK
sorry to go on, is it possible to pass more than 1 parameter, in this way?
NavigateUrl='<%# Eval("IDNo", "test.aspx?IDNo={0}&Sum={1}") %>'
Feb 28, 2013 11:45 AM|LINK
callan1 NavigateUrl='<%# Eval("IDNo", "test.aspx?IDNo={0}&Sum={1}") %>'
NavigateUrl='<%# String.Format("test.aspx?IDNo={0}&Sum={1}", Eval("First_Field"), Eval("Second_Field")) %>'
Feb 28, 2013 11:59 AM|LINK
Thank you so, so much is there a limit to the number of parameter you can pass, or this browser dependent?
Mar 01, 2013 02:42 AM|LINK
callan1 Thank you so, so much is there a limit to the number of parameter you can pass, or this browser dependent?
http://stackoverflow.com/questions/812925/what-is-the-maximum-possible-length-of-a-query-string
callan1
Member
146 Points
462 Posts
Is it possible to have a HyperLinkField inside a TemplateField ?
Feb 28, 2013 09:05 AM|LINK
Hi all
I have a gridview with the following TemplateField:
<asp:TemplateField HeaderText="title"> <ItemTemplate> <asp:HyperLink ID="lbl1" runat="server" Visible='<%# IIf(IsDBNull(Eval("desc")), true, false) %>' NavigateUrl="test.aspx" Target="_blank">Not Agreed</asp:HyperLink> <asp:HyperLink ID="lbl2" runat="server" Visible='<%# IIf(IsDBNull(Eval("desc")), false, true) %>' NavigateUrl="test.aspx" Target="_blank">Agreed</asp:HyperLink> </ItemTemplate> </asp:TemplateField>This works greate, however I now need to pass paramenters as a queryString to these page links. The only way I know how to do this is:
<asp:HyperLinkField Visible='<%# IIf(IsDBNull(Eval("desc")), true, false) %>' DataNavigateUrlFields="IDNo" DataNavigateUrlFormatString="test?IDNo={0}" Target="_blank" Text="Not Agreed" />But I am getting a databinding error. In my mind I need the TemplateField as I require the column header, and the link to appear along with the 'IsDBNull' visible
I'd be very grateful for any suggestions to how to overcome this?
MetalAsp.Net
All-Star
112180 Points
18257 Posts
Moderator
Re: Is it possible to have a HyperLinkField inside a TemplateField ?
Feb 28, 2013 09:46 AM|LINK
NavigateUrl = '<%# Eval("IDNo", "test?IDNo={0}") %>'
oned_gk
All-Star
31697 Points
6476 Posts
Re: Is it possible to have a HyperLinkField inside a TemplateField ?
Feb 28, 2013 09:48 AM|LINK
callan1
Member
146 Points
462 Posts
Re: Is it possible to have a HyperLinkField inside a TemplateField ?
Feb 28, 2013 10:02 AM|LINK
Thanks guys, I've applied what you've suggested:
<asp:HyperLink ID="lblAgreed" runat="server" Visible='<%# IIf(IsDBNull(Eval("DESC")), false, true) %>' NavigateUrl='<%# Eval("IDNo", "test?IDNo={0}") %>' Target="_blank">Agreed</asp:HyperLink>but getting page not found - have I missed something?
(page along with query are correct)
me_ritz
Star
9337 Points
1447 Posts
Re: Is it possible to have a HyperLinkField inside a TemplateField ?
Feb 28, 2013 10:19 AM|LINK
NavigateUrl='<%# Eval("IDNo", "test.aspx?IDNo={0}") %>'
Bold text : It should aspx page name ideally
callan1
Member
146 Points
462 Posts
Re: Is it possible to have a HyperLinkField inside a TemplateField ?
Feb 28, 2013 10:41 AM|LINK
You're right - thanks
callan1
Member
146 Points
462 Posts
Re: Is it possible to have a HyperLinkField inside a TemplateField ?
Feb 28, 2013 11:36 AM|LINK
sorry to go on, is it possible to pass more than 1 parameter, in this way?
NavigateUrl='<%# Eval("IDNo", "test.aspx?IDNo={0}&Sum={1}") %>'me_ritz
Star
9337 Points
1447 Posts
Re: Is it possible to have a HyperLinkField inside a TemplateField ?
Feb 28, 2013 11:45 AM|LINK
NavigateUrl='<%# String.Format("test.aspx?IDNo={0}&Sum={1}", Eval("First_Field"), Eval("Second_Field")) %>'
callan1
Member
146 Points
462 Posts
Re: Is it possible to have a HyperLinkField inside a TemplateField ?
Feb 28, 2013 11:59 AM|LINK
Thank you so, so much is there a limit to the number of parameter you can pass, or this browser dependent?
me_ritz
Star
9337 Points
1447 Posts
Re: Is it possible to have a HyperLinkField inside a TemplateField ?
Mar 01, 2013 02:42 AM|LINK
http://stackoverflow.com/questions/812925/what-is-the-maximum-possible-length-of-a-query-string