Добавьте OnClick к кнопке из кода программной частиC#

Место общения программистов C#
Ответить
Anonymous
 Добавьте OnClick к кнопке из кода программной части

Сообщение Anonymous »

Я пытаюсь добавить атрибут OnClick к кнопке из кода. В зависимости от того, равен ли элемент Attending 0 или нет, будет определяться, какой атрибут OnClick будет добавлен. Когда я нажимаю кнопку с приведенным ниже кодом, я получаю следующую ошибку:


"Ошибка выполнения Microsoft JScript:
Sys.WebForms .PageRequestManagerServerErrorException: неверный аргумент обратной передачи
или обратного вызова. Проверка событий включена с помощью на странице. В целях безопасности
эта функция. проверяет, что аргументы для событий обратной передачи или обратного вызова
исходят от серверного элемента управления, который первоначально их обработал. Если
данные действительны и ожидаемы, используйте
метод ClientScriptManager.RegisterForEventValidation, чтобы
зарегистрировать данные обратной передачи или обратного вызова для проверки."


Что я делаю не так?

ASPX
















Код

protected void Dl1_ItemDataBound(object sender, DataListItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
.....//removed other code to save space

Button SignupButton = (Button)e.Item.FindControl("SignupButton");
if (Attending == 0)
{
AttendingorNot.Text = "You are not attending";
AttendingorNot.Attributes.Add("class", "alert");
SignupButton.Text = "Attend";
SignupButton.Attributes.Add("class", "btn btn-large btn-success");
SignupButton.Click += new EventHandler(Submit_Add);
}
else
{
AttendingorNot.Text = "You are attending!";
AttendingorNot.Attributes.Add("class", "alert alert-success");
SignupButton.Text = "Remove";
SignupButton.Attributes.Add("class", "btn btn-large btn-danger");
SignupButton.Click += new EventHandler(Submit_Remove);
}
}
}
private void Submit_Remove(object sender, EventArgs e)
{
Response.Redirect("Default.aspx?msg=work");
}
private void Submit_Add(object sender, EventArgs e)
{
Response.Redirect("Default.aspx?msg=gone");
}


Подробнее здесь: https://stackoverflow.com/questions/190 ... codebehind
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»