Неверный аргумент обратной передачи или обратного вызова. Получение только в случае кнопки изображения

Я получаю следующую ошибку:

Неверный аргумент обратной передачи или обратного вызова. Проверка события включена с помощью <pages enableEventValidation="true"/> в конфигурации или <%@ Page EnableEventValidation="true" %> на странице. В целях безопасности эта функция проверяет, что аргументы для событий обратной передачи или обратного вызова исходят от серверного элемента управления, который первоначально их представил. Если данные действительны и ожидаемы, используйте метод ClientScriptManager.RegisterForEventValidation, чтобы зарегистрировать данные обратной передачи или обратного вызова для проверки.

у меня есть ImageButton в Repeater как это:

<asp:ImageButton ID="btn_CreatePdf" ImageUrl="~/images/download.png" 
                 ToolTip="Create Transmittal for this Contact" 
                 CommandName="CreatePdf"   
                 CommandArgument='<%#Eval("contactid")%>' runat="server" />

Когда я нажимаю на это ImageButton, это вызывает эту ошибку.

Но когда я попробовал LinkButton вместо ImageButton работает нормально. Я пытался следовать LinkButton:

<asp:LinkButton ID="btn_CreatePdf" Text="Download" CommandName="CreatePdf" 
                CommandArgument='<%#Eval("contactid")%>' runat="server" >    
</asp:LinkButton>

Пожалуйста, дайте мне решение, почему я получаю эту ошибку только в случае ImageButton,

2 ответа

Решение

На вашей странице загрузите проверку IsPostBack

protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        //your code here
    }
}

Использование: if(!Page.IsPostBack) (С #).

Также посмотрите на этот ответ и другие на тот же вопрос

Другие вопросы по тегам