Asp.net Gridview按钮排成一排

时间:2014-10-14 08:36:20

标签: c# asp.net

我在asp.net中使用来自sql数据库的信息创建了一个Gridview,现在我想对gridview进行编码,这样我就可以点击一行,将我重定向到另一个aspx页面,在那里我可以使用来自的信息运行查询那一行。

例如,我得到一行包含以下信息:

- Arjen de Vries 123456789 Netherlands 

然后我需要在该行之前的详细按钮,如:

- (detail) Arjen de Vries 123456789 Netherlands 

当你点击细节时,它会把我带到另一个页面,在那里你可以找到关于我的更多信息。

第一步是创建详细信息按钮,但我搜索了互联网,但无法找到合适的解决方案。

所以我的问题是如何创建这样一个按钮,它与该行中的信息相关联。

谢谢,

首次编辑:

我在gridview中找到了创建按钮的解决方案,现在当我单击此按钮时,我将被重定向到另一个页面。

我在评论页面上找到了解决方案。

现在出现以下问题,如何使用gridview行中的数据在下一页上构建查询。

2 个答案:

答案 0 :(得分:0)

以下示例是针对链接按钮,但正常按钮没有区别。 链接按钮在gridview中肯定会更好看

<asp:GridView ID="GridView1" runat="server" CssClass="tblcss1" 
    AutoGenerateColumns="False" onrowdatabound="GridView1_RowDataBound" OnRowCommand="grdCustomPagging_RowCommand">
 <Columns>
        <asp:BoundField DataField="DB_COL_1" HeaderText="First Col" />
        <asp:BoundField DataField="DB_COL_2" HeaderText="second Col" />
        <asp:BoundField DataField="DB_COL_3" HeaderText="Third Col" />

        <asp:TemplateField HeaderText="">

    <ItemTemplate>

   <asp:LinkButton runat="server" ID="lnkView" OnClick="lnkView_Click">Click here</asp:LinkButton>

     </ItemTemplate>

   </asp:TemplateField>
    </Columns>
</asp:GridView>

c#代码是

protected void lnkView_Click(object sender, EventArgs e)
{

    GridViewRow grdrow = (GridViewRow)((LinkButton)sender).NamingContainer;

    string firstColData  = grdrow.Cells[0].Text;
    string secondColData  =   grdrow.Cells[1].Text;
    string thirdColData  = grdrow.Cells[2].Text;

    Response.Redirect("page1.aspx?firstColumnValue="+firstColData );

}

或者您可以使用超链接并将行值作为查询字符串发送到下一页。在该页面中,您可以显示详细信息。除非你想在第一页处理数据,否则这是更好的方法。如果在URL中公开数据是个问题,则可以加密查询字符串。

答案 1 :(得分:0)

我做到了!

首先,我想再次感谢Anshu,我使用了部分代码。我做的是:我创建了一个字符串firstColData = grdrow.Cells [0] .Text;

然后在我的另一页上我做了:sqldatasource.selectcommand“SELECT ... From ... WHERE naam ='”+ session。[“Thesessionname”]。tostring()+“'”;

这就是我想要实现的目标。

感谢大家!