For security purposes, this feature verifies that arguments to postback or callback events originate from the server control that originally rendered them.
If you disable partial rendering by setting Script Manager property you will see that the page works perfectly. NET about all values in the items collection while it is been rendered and ASP.
NET successfully validates submitted value against hashes stored in the "event validation" hidden input on the next postback.
If you re-enable partial rendering in this sample, one small but still important thing changes.
When the postback values are received from the client postback values are validated against the hashes stored in this hidden input.
If server encounters any value with a hash which is among hashes in the __EVENTVALIDATION field it throws an exception with the message above. NET and receive such exception it usually means that someone attempts to tamper a request and does it incorrectly. NET AJAX extensions however it becomes possible to get this exception as a result of developer mistake.
I've constructed a sample which demonstrates what you have to do (really you should not do) to get this weird message box. The sample changes items in the Drop Down List on each postback and changes them in a way that previously selected item disappears from the list on the next postback.If you run this sample and click the button twice you will see exactly the same message box. (Similar things happen if you implement cascading dropdowns with autopostbacks).The event validation is designed to prevent malicious requests from breaking your software.When a server page is rendered and sent to the browser web controls tell ASP.NET about all allowed values that the web page can submit back to the server.The collected values are hashed and stored in the hidden input in the web page.