每一行我的GridView都应该有一个按钮/超链接,用于导航到Page?id=something。
然后有一个JavaScript捕获重定向并将页面打印为iframe。
这个 something 已经在行中可用(但是隐藏的)。
因此,我想为每个字段设置NavigateUrl =“〜/ Page.aspx?id =”+ Id.ToString(),但问题是从LINQ数据源填充Id在DataBind()中。
绑定是这样的:我能在那里做吗?或者在行绑定事件中?
<asp:GridView ID="gridleitNidurstada" runat="server" GridLines="None" AllowPaging="True"
CssClass="mGrid" PagerStyle-CssClass="pgr" DataKeyNames="Id" OnRowDataBound="gridLeit_RowDataBound"
AllowSorting="True" SortedAscendingHeaderStyle-CssClass="sortasc-header" SortedDescendingHeaderStyle-CssClass="sortdesc-header"
OnSorting="gridleitNidurstada_Sorting" CurrentSortField="Id" CurrentSortDir="Ascending"
AutoGenerateColumns="False">
<Columns>
<asp:BoundField DataField="Id" HeaderText="Id" SortExpression="Id" Visible="false"/>
</ItemTemplate>
</asp:TemplateField>
<asp:HyperLinkField HeaderText="Print" Text="Print" **anything here?**/>
</Columns>
<PagerStyle CssClass="pgr"></PagerStyle>
<SortedAscendingHeaderStyle CssClass="sortasc-header"></SortedAscendingHeaderStyle>
<SortedDescendingHeaderStyle CssClass="sortdesc-header"></SortedDescendingHeaderStyle>
</asp:GridView>
绑定是这样的:我能在那里做吗?或者在行绑定事件中?
IQueryable<model.SomeClass> someClass =
from m in preparePredicate()
select new model.SomeClass
{
Id = m.id,
...
};
gridleitNidurstada.DataSource = someClass;
gridleitNidurstada.DataBind();