Я пытаюсь удалить кнопку VB.NET на моей странице aspx. Попытка использовать javascript и ajax для выполнения того же кода, который был у моего vb.
Я включил диспетчер сценариев, установил для EnablePageMethods значение true, добавил статическую подпрограмму и сослался на нее в моей функции javascript (кстати, это кажется большой работой только для выполнения существующей подпрограммы). Javascript вызывает мой код, и он почти работает.
Проблема в том, что теперь я получаю исключение NullReferenceException, когда SimulatePrintBatchClick пытается что-либо сделать с элементами управления.
Ошибка: «Ссылка на объект не установлена для экземпляра объекта», строка «pnlVars.Controls.Clear»
Вот код из UW.aspx:
<WebMethod()> _
Public Shared Sub PrintBatchFromJSWM()
Dim UWI As New UW
UWI.SimulatePrintBatchClick()
End Sub
Sub SimulatePrintBatchClick()
Dim Client As New LetterWriterClient
'Run ExStream and get the PDF File
Globals.PDF_Data = Nothing
Globals.PDF_Data = Client.ProcessDatFile(Session("SessionID").ToString)
'Reload the form -- turn off all controls, initialize variables and make the PDF iFrame visible
pnlVars.Controls.Clear() 'Bombs out on THIS line of code
pnlPDF.Visible = True
Me.SendToBach.Visible = False
Session.Contents("LetterVariables") = Nothing
Session.Contents("PolicyInformation") = Nothing
Session.Contents("Submitted") = True
Response.Redirect("UW.aspx")
End Sub
Забавно, когда я запускаю приведенный выше код в PrintBatch_Click, все работает просто отлично. Я действительно не понимаю, почему это взрывается как подпрограмма.
Возможно, это не тот способ, но я не могу найти другой способ. Первоначально этот код обрабатывался кнопкой ASP / VB, но спецификации требовали его удаления.
В любом случае, я могу получить приведенный выше код для выполнения своей работы?
Спасибо,
Джейсон