1

我正在开发一个带有 Gridview 控件的 aspx 页面。我在这里粘贴我的代码

                    <Columns>

                     <asp:TemplateField HeaderText="Request">
                    <ItemTemplate>
                    <asp:LinkButton ID="sendrequest" runat="server" Text="SendRequest" CommandName="SendRequest"></asp:LinkButton>
                    </ItemTemplate>
                    </asp:TemplateField>

                    <asp:TemplateField HeaderText="FirstName">
                    <ItemTemplate>
                    <asp:Label ID="fname" runat="server" Text='<%#Eval("fname") %>'></asp:Label>
                    </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="LastName">
                    <ItemTemplate>
                    <asp:Label ID="lname" runat="server" Text='<%#Eval("lname") %>'></asp:Label>
                    </ItemTemplate>
                    </asp:TemplateField>

                    <asp:TemplateField HeaderText="EMailID">
                    <ItemTemplate>
                    <asp:Label ID="email" runat="server" Text='<%#Eval("email") %>'></asp:Label>
                    </ItemTemplate>
                    </asp:TemplateField>

                    <asp:TemplateField HeaderText="Image">
                    <ItemTemplate>
                    <asp:Image ID="img" runat="server" ImageUrl='<%#Eval("imagepath") %>' Width="100" Height="100" />
                    </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Request">
                    <ItemTemplate>
                    <asp:LinkButton ID="viewprofile" runat="server" Text="ViewFullProfile" CommandName="ViewProfile"
                    a href ='<%#"ViewProfile.aspx?email="+DataBinder.Eval(Container.DataItem,"email") %>'>
                    </asp:LinkButton>
                    </ItemTemplate>
                    </asp:TemplateField>


                    </Columns>



                </asp:GridView>

我的问题是我需要哪个 LinkBut​​ton(SendRequest) 单击该行电子邮件值的电子邮件值

请帮我

4

1 回答 1

2

处理 GridView RowCommand 事件:

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) 
{ 
    if (e.CommandName.Equals("SendRequest")) 
    { 
       string strEmail = GridView1.DataKeys[Convert.ToInt32(e.CommandArgument)].Value.ToString();
       lbltest.Text = strEmail; 
    } 
} 

假设您将 DataKeyNames 设置为email您还必须将sendRequest按钮的 CommandArgument 设置为

CommandArgument="<%# Container.DataItemIndex %>
于 2013-02-01T09:28:27.520 回答