I've been getting the same message, intermittently, even after adding <pages validateRequest="false" enableEventValidation="false" viewStateEncryptionMode ="Never" /> to web.config. In the hope that it helps, here's some of the code. Note the third item in the EditItemTemplate.
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" AutoGenerateColumns="False" DataKeyNames="dlID" DataSourceID="ObjectDataSource1" Width="628px" PageSize="5" CellPadding="4" ForeColor="#333333" GridLines="None" RowHeaderColumn="dlID">
<Columns>
<asp:CommandField ShowEditButton="True" />
<asp:BoundField DataField="dlID" HeaderText="Lead ID" InsertVisible="False" ReadOnly="True"
SortExpression="dlID" />
<asp:TemplateField HeaderText="User Name Address Etc">
<ItemTemplate>
<asp:FormView ID="FormView1" runat="server" DataKeyNames="dlID"
DataSourceID="ObjectDataSource1" OnPageIndexChanging="FormView1_PageIndexChanging" Width="731px" Height="43px">
<PagerSettings Mode="NextPrevious" />
<EditItemTemplate>
<asp:Label ID="dlIDLabel1" runat="server" Text='<%# Eval("dlID") %>'></asp:Label><br />
dlUSERID:
<asp:TextBox ID="dlUSERIDTextBox" runat="server" Text='<%# Bind("dlUSERID") %>'>
</asp:TextBox><br />
STATE:
<asp:Label ID="adSTATELabel1" runat="server" Text='<%# Eval("adSTATE") %>'>
</asp:Label><br />
dlLANGUAGE:
<asp:TextBox ID="dlLANGUAGETextBox" runat="server" Text='<%# Bind("dlLANGUAGE") %>'>
</asp:TextBox><br />
dlTYPE:
<asp:TextBox ID="dlTYPETextBox" runat="server" Text='<%# Bind("dlTYPE") %>'>
</asp:TextBox><br />
dlSTATUS:
<asp:TextBox ID="dlSTATUSTextBox" runat="server" Text='<%# Bind("dlSTATUS") %>'>
</asp:TextBox><br />
dlNAME:
<asp:TextBox ID="dlNAMETextBox" runat="server" Text='<%# Eval("dlNAME") %>'>
</asp:TextBox><br />
dlPHONE:
<asp:TextBox ID="dlPHONETextBox" runat="server" Text='<%# Bind("dlPHONE") %>'>
</asp:TextBox><br />
adADDRESS:
<asp:TextBox ID="adADDRESSTextBox" runat="server" Text='<%# Bind("adADDRESS") %>'>
</asp:TextBox><br />
adCITY:
<asp:TextBox ID="adCITYTextBox" runat="server" Text='<%# Bind("adCITY") %>'>
</asp:TextBox><br />
adZIP:
<asp:TextBox ID="adZIPTextBox" runat="server" Text='<%# Bind("adZIP") %>'>
</asp:TextBox><br />
wpPRINCIPAL:
<asp:TextBox ID="wpPRINCIPALTextBox" runat="server" Text='<%# Bind("wpPRINCIPAL") %>'>
</asp:TextBox><br />
wpINTEREST:
<asp:TextBox ID="wpINTERESTTextBox" runat="server" Text='<%# Bind("wpINTEREST") %>'>
</asp:TextBox><br />
wpPAYMENT:
<asp:TextBox ID="wpPAYMENTTextBox" runat="server" Text='<%# Bind("wpPAYMENT") %>'>
</asp:TextBox><br />
wpMINIMUM:
<asp:TextBox ID="wpMINIMUMTextBox" runat="server" Text='<%# Bind("wpMINIMUM") %>'>
</asp:TextBox><br />
wpFICO:
<asp:TextBox ID="wpFICOTextBox" runat="server" Text='<%# Bind("wpFICO") %>'>
</asp:TextBox><br />
lsFACEVALUE:
<asp:TextBox ID="lsFACEVALUETextBox" runat="server" Text='<%# Bind("lsFACEVALUE") %>'>
</asp:TextBox><br />
dlCALLRESULT:
<asp:TextBox ID="dlCALLRESULTTextBox" runat="server" Text='<%# Bind("dlCALLRESULT") %>'>
</asp:TextBox><br />
dlREASON:
<asp:TextBox ID="dlREASONTextBox" runat="server" Text='<%# Bind("dlREASON") %>'>
</asp:TextBox><br />
dlDATEAVAILABLE:
<asp:TextBox ID="dlDATEAVAILABLETextBox" runat="server" Text='<%# Bind("dlDATEAVAILABLE") %>'>
</asp:TextBox><br />
dlDATEOUT:
<asp:TextBox ID="dlDATEOUTTextBox" runat="server" Text='<%# Bind("dlDATEOUT") %>'>
</asp:TextBox><br />
dlDATEIN:
<asp:TextBox ID="dlDATEINTextBox" runat="server" Text='<%# Bind("dlDATEIN") %>'>
</asp:TextBox><br />
dlDATEIMPORTED:
<asp:TextBox ID="dlDATEIMPORTEDTextBox" runat="server" Text='<%# Bind("dlDATEIMPORTED") %>'>
</asp:TextBox><br />
dlSOURCE:
<asp:TextBox ID="dlSOURCETextBox" runat="server" Text='<%# Bind("dlSOURCE") %>'>
</asp:TextBox><br />
naFIRST:
<asp:TextBox ID="naFIRSTTextBox" runat="server" Text='<%# Bind("naFIRST") %>'>
</asp:TextBox><br />
naLAST:
<asp:TextBox ID="naLASTTextBox" runat="server" Text='<%# Bind("naLAST") %>'>
</asp:TextBox><br />
phAREACODE:
<asp:TextBox ID="phAREACODETextBox" runat="server" Text='<%# Bind("phAREACODE") %>'>
</asp:TextBox><br />
phPHONE:
<asp:TextBox ID="phPHONETextBox" runat="server" Text='<%# Bind("phPHONE") %>'>
</asp:TextBox><br />
wpHOMEVALUE:
<asp:TextBox ID="wpHOMEVALUETextBox" runat="server" Text='<%# Bind("wpHOMEVALUE") %>'>
</asp:TextBox><br />
dlUNIQ:
<asp:TextBox ID="dlUNIQTextBox" runat="server" Text='<%# Bind("dlUNIQ") %>'>
</asp:TextBox><br />
<asp:LinkButton ID="UpdateButton" runat="server" CausesValidation="True" CommandName="Update"
Text="Update">
</asp:LinkButton>
<asp:LinkButton ID="UpdateCancelButton" runat="server" CausesValidation="False" CommandName="Cancel"
Text="Cancel">
</asp:LinkButton>
</EditItemTemplate>
(Apologies for not yet having figured out how easily to avoid that extra cut-and-paste white space.)
As I was saying, adding the viewState stuff to web.config temporarily fixed the problem (aka "worked around yet another set of well-intentioned but ultimately unhelpful-at-best Microsoft defaults"). It reoccured later, presumably explained by the overrides to which the earlier MVP post refers, went away again after a re-boot, came back again out of nowhere because the parameters had magically capitalized themselves, went away after I repaired that, and has reappeared once more.
This last occurrence was on the first look after changing that third item from a "Bind" TextBox to an "Eval" label.
I honestly hope the preceding information is helpful to you guys somehow. This next bit is less likely to be.
My diagnosis is that this obstacle is among a set of those that are raised on the SomethingOtherwiseLikelyToBeHelpful event.
More seriously - actually, all joking aside - please add my voice to those who cry out for relief from security cures that are much MUCH worse that the sickness. Granted, my little application needs fairly little security, and I'm new to the technology. But I'd be happy to have a few thousand dollars every year hacked out of my retirement account if I never have to see another viewstate mac machine policy message result from a default to postback validation.
While you're at it, can you work on the child seat laws? I live two miles from the beach, but couldn't drive my visiting nephews to it. Thanks.