我在ASP.net 3.5页面中有两个GridView。我将HyperLink字段作为First GridView中的一个字段。ASP.net中的父子Gridview
在这个超链接我需要调用通过传递某些值的方法showAllRecords(从超链接值)
如何做到这一点显示第二网格的点击?
感谢
我在ASP.net 3.5页面中有两个GridView。我将HyperLink字段作为First GridView中的一个字段。ASP.net中的父子Gridview
在这个超链接我需要调用通过传递某些值的方法showAllRecords(从超链接值)
如何做到这一点显示第二网格的点击?
感谢
你可以尝试一个TemplateField像这样GridView1(主要GridView控件)
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton runat="server" ID="LinkButton1" CommandName="cmdName" CommandArgument='<%# Eval("IdColumn") %>' > LinkButton</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
和GridView1的RowCommand,你可以得到CommandArgument和设置GridView2(子GridView控件)的数据源。
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if(e.CommandName = "cmdName")
{
var arg = e.CommandArgument;
// use arg to filter GridView2's DataSource
GridView2.DataSource = FilteredDataSource;
GridView2.DataBind();
// show GridView2 if it's hidden.
}
}
首先,你需要在第一网格处理SelectedIndexChanged事件,然后得到超链接的价值。超链接是DataKey吗?如果是,则通过GridOne.SelectedDataKey.Values["key"]
得到它,否则通过valuefromGridOne = GridOne.SelectedRow.Cells[num].Text
得到实际的小区,其中number是小区编号。一旦你有了它,你可以通过处理objectDataSource的选择事件(假设你用它来绑定数据)并传递这个值来将值传递给你的第二个网格,像这样e.InputParameters["dataKey"] = valuefromGridOne;