Вы получаете сообщение об ошибке, опубликованное в заголовке, потому что событие Click
для btnPaid
ожидает обработчик события с такой подписью, как:
protected void btnButton_Click(object sender, EventArgs e)
You 'повторно нацелив его на метод с сигнатурой:
protected void rlrtAdres_ItemDataBound(object sender, RepeaterItemEventArgs e)
Если btnPaid
и lblordernr
находятся в одном и том же ItemTemplate
для ретранслятора, вы можете вызвать FindControl
на кнопке, чтобы получить ссылку на lblordernr
.Например, если btnPaid
объявлено так:
<asp:Button ID="btnPaid" runat="server" Text="Paid" OnClick="btnPaid_Click"
Style="height: 26px" CssClass="knop" />
, следующий код даст вам ссылку на lblOrderNr
.
protected void btnPaid_Click(object sender, EventArgs e)
{
var btnPaid = (Button)sender;
var lblOrderNr = (Label)btnPaid.FindControl("lblordernr");
var labelText = lblOrderNr.Text;
//Do whatever else needs to be done
}
В качестве альтернативы, вы можете просто добавитьзначение в lblOrderNr
для свойства CommandArgument
на кнопке и получить его прямо оттуда.
<asp:Button ID="btnPaid" runat="server" Text="Paid" OnClick="btnPaid_Click"
CommandArgument='<%# DataBinder.Eval(Container, "DataItem.sid").ToString()%>'
Style="height: 26px" CssClass="knop" />
protected void btnPaid_Click(object sender, EventArgs e)
{
var btnPaid = (Button)sender;
var labelText = btnPaid.CommandArgument;
//Do whatever else needs to be done
}