VB.NET 2005 проблемы с тем, что Дизайнер не смог обработать строку кода
-
01-07-2019 - |
Вопрос
У меня проблема в моем проекте с .designer, который, как всем известно, генерируется автоматически, и я его вообще не менял.Однажды у меня все шло нормально, я сделал резервную копию, а на следующий день - бум!проект внезапно перестает работать и отправляет сообщение о том, что разработчик не может обработать строку кода...и из-за этого я получаю больше ошибок (2 в моем случае), у меня даже была резервная копия со дня, когда она работала, и тоже бесполезна, я получаю ту же ошибку, я попробовал на своем ноутбуке, и возникает та же проблема.Как я могу удалить "FitTrack"?Невероятная часть заключается в том, что пока я пробовал на ноутбуке, ошибки на рабочем столе исчезли у меня перед глазами, одна, а секундой позже другая (но все еще есть предупреждение от дизайнера и я не могу видеть форму), я закрывал и открывал ее снова, и снова у меня были ошибки...
Ошибка заключается в:
Предупреждение 1 Разработчик не может обработать код в строке 27:
Me.CrystalReportViewer1.ReportSource = Me.CrystalReport11
Код внутри метода 'InitializeComponent' генерируется разработчиком и не должен быть изменен вручную.Пожалуйста, удалите все изменения и попробуйте открыть конструктор еще раз.C:\Documents и настройки\Алан Кардеро\Рабочий стол\Отчеты о ликвидации\Отчеты о ликвидации\Отчеты о ликвидации\Form1.Designer.vb 28 0
Решение
Я бы создал резервную копию связанного с ним файла designer.cs (например, скопировал бы его на рабочий стол), затем отредактировал файл designer.cs и удалил оскорбительные строки (отслеживая, что они делают), а затем я бы попытался переделать эти строки через режим разработки этой формы.
Другие советы
Я бы удалил статическое присвоение в конструкторе ресурсу CrystalReport11, а затем добавил обработчик загрузки в вашу форму и, прежде чем возвращать ReportSource обратно в CrystalReport11, выполнил проверку
If(Not DesignMode) Then Me.CrystalReportViewer1.ReportSource = Me.CrystalReport11
Вот макет..
Public Sub New()
InitializeComponent()
AddHandler Me.Load, New EventHandler(AddressOf Form1_Load)
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
If (Not DesignMode) Then Me.CrystalReportViewer1.ReportSource = Me.CrystalReport11
End Sub
Вы должны иметь возможность создать резервную копию, очистить строки, в которых возникли проблемы, затем, когда вы снова откроете ее, разработчик исправит код.
Ключ в том, что вы хотите позволить дизайнеру повторно сгенерировать, а затем просто подтвердить наличие всех необходимых строк.
Обычно у меня это работает, но вы просто должны быть уверены, что удалили все строки, которые ему не нравятся.
Я делаю простой способ;Щелкните правой кнопкой мыши на отчете и выберите Запустить пользовательский инструмент.
Автоматически он устраняет все проблемы и, работая на меня, я устраняю 52 ошибки crystal ReportViewer.