按钮和中继器控制

时间:2011-08-17 14:20:37

标签: c# asp.net sql repeater

我正在为我的项目使用ASP.NET,C#,Sql Server 2005 我正在使用转发器控件来形成一个用户表,该用户表是站点的成员,并且每个用户旁边都有一个按钮,以便将它们添加到您的好友列表中。我已经设置了所有设置,但我不知道如何在按下按钮后获取每行的具体信息。我的意思是,

如何将朋友请求发送给按钮旁边显示用户名的人?要么 如何访问按钮旁边显示的用户名,以便我可以将它用于我的代码?

我的剧本

<asp:Repeater ID="myrepeater" runat="server">
        <HeaderTemplate>
            <table style="font: 8pt verdana">
                <tr style="background-color:#3C78C3">
                    <th>Search Result</th>
                </tr>

        </HeaderTemplate>
        <ItemTemplate>
            <tr>
                <td>
                    <%#DataBinder.Eval(Container,"DataItem.allun")%>
                    <asp:Button ID="Button1" runat="server" Text="Button" />
                </td>
           </tr>
        </ItemTemplate>
        <FooterTemplate>
            </table>
        </FooterTemplate>

背后的代码

protected void btnSearch_Click(object sender, EventArgs e)
{
    con.Open();
    if (txtSearch.Text != "")
    {
        SqlDataAdapter mycommand = new SqlDataAdapter("select * from WebAdminTable where allun='" + txtSearch.Text + "'", con);
        DataSet ds = new DataSet();
        mycommand.Fill(ds);
        myrepeater.DataSource = ds;
        myrepeater.DataBind();
    }
    else
    {
        //msgbox for entering value
    }
    con.Close();
}

protected void btnAddToMyFList_Click(object sender, EventArgs e)
{
      //?    
}

1 个答案:

答案 0 :(得分:1)

您可以将userName绑定到标签控件,然后您可以点击按钮访问标签控件的值,如...

protected void btnAddToMyFList_Click(object sender, EventArgs e)
{
  Button btnAddToMyFList = (Button)sender;
  Label label = (Label)btnAddToMyFList.Parent.FindControl("LabelId");
  String labelText = label.Text; //userName of clicked row
}