У меня была такая же проблема, и я действительно не нашел никакого удовлетворительного решения, пока не остановился на http://siderite.blogspot.com/2009/02/thispostbacksettingsasync-is-null-or.html, который делает именно то, что я хочу.
Чтобы избежать проблем с возможными неработающими ссылками в будущем, вот код:
var script = @"
if (Sys &&
Sys.WebForms && Sys.WebForms.PageRequestManager &&
Sys.WebForms.PageRequestManager.getInstance)
{
var prm = Sys.WebForms.PageRequestManager.getInstance();
if (prm &&
!prm._postBackSettings)
{
prm._postBackSettings = prm._createPostBackSettings(false, null, null);
}";
ScriptManager.RegisterOnSubmitStatement(
Page,
Page.GetType(),
"FixPopupFormSubmit",
script);
В случае отправки без установленного _postBackSettings он создает их, что приводит к исчезновению исключения нулевой ссылки, поскольку _postBackSettings.async становится доступным.
Надеюсь, это поможет,
G.