1) Do not set the OKControlID property in ModalPopupExtender.
2) In your Page_Load set OkButton.OnClientClick = string.Format("$find('{0}').hide();", modalPopupExtender1.ClientID);
Explanation: Setting OkControlID stops sending the button. Instead, manually use javascript to hide the expander, which will allow the button to publish the form.
source share