Здравствуйте!
Возникла проблема с просмотром переменных в "Окне просмотра" в режиме симулятора. При нажатии на кнопку троеточия в поле "Имя" появляется окно с ошибкой "Object reference not set to an instance of an object.". Полный текст ошибки:
Код:
2.9.363.0
System.NullReferenceException: Object reference not set to an instance of an object.
at ProgramRelayFBD.PresentationLayer.Presenters.VariableCollectionViewModel.<>c__DisplayClass8_0.<GetTreeNodes>b__0(VariableInfoBaseDecorator item)
at System.Linq.Enumerable.SelectListIterator`2.MoveNext()
at System.Collections.Generic.LargeArrayBuilder`1.AddRange(IEnumerable`1 items)
at System.Collections.Generic.EnumerableHelpers.ToArray[T](IEnumerable`1 source)
at ProgramRelayFBD.Views.VariablesServicePage..ctor(IVariableCollectionViewModel viewModel)
at ProgramRelayFBD.InfrastructureLayer.Details.VariablesPageFactory.CreateInputVariablesPage()
at ProgramRelayFBD.InfrastructureLayer.SchemeEditor.TablePagesFactoryFromWatchList.Create(DrawingDocument drawing)+MoveNext()
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
at ProgramRelayFBD.InfrastructureLayer.Adapters.ManagerVariablesPresenter..ctor(IEnumerable`1 tableVariablesPages, BaseVariableInfo currentVariableInfo, String textNullablePage, IMappingParameterRepository mappingParameterRepository, IVariableManager variableManager, ExtensionPanelPresenter extensionPanelPresenter, VariablesCatalogPresenter variablesCatalogPresenter)
at ProgramRelayFBD.InfrastructureLayer.Adapters.FormPresenter.CreateManagerVariablesPresenter(IEnumerable`1 pages, BaseVariableInfo currentVariableInfo, String textNullablePage, IVariableManager variableManager, ExtensionPanelPresenter extensionPanelPresenter)
at ProgramRelayFBD.InfrastructureLayer.Adapters.FormPresenter.SelectVariableFromTable(IEnumerable`1 pages, BaseVariableInfo currentVariableInfo, DrawingDocument drawingDocument, String textNullablePage, IWin32Window owner)
at ProgramRelayFBD.InfrastructureLayer.Adapters.FormPresenter.SelectVariableFromCurrentDocument(BaseVariableInfo currentVariableInfo, String textNullablePage, IWin32Window owner, ITablePagesFactory pagesFactory)
at ProgramRelayFBD.InfrastructureLayer.SchemeEditor.LabelButtonEditingPresenter.SelectNewValue()
at Owen.ExternalInterfaces.LabelButtonEditingControl.<CreateChildControls>b__17_0(Object <p0>, EventArgs <p1>)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at Nevron.UI.WinForm.Controls.NButton.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at Nevron.UI.WinForm.Controls.NButton.OnMouseUp(MouseEventArgs e)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at Nevron.UI.WinForm.Controls.NButton.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, WM msg, IntPtr wparam, IntPtr lparam)
Версия программы: 2.9.363.0. Операционная система Windows 11 23H2 и Windows 10 22H2.
Воспроизведение ошибки:
1. Открываем программу
2. Создаем новый проект
3. Выбираем модель устройства ПР102-24.2416.16
4. В меню "Прибор -> Настройки прибора" добавляем модуль расширения ПРМ-24.1
5. Сохраняем файл проекта на рабочий стол под именем 123.owle
6. Закрываем программу
7. Открываем программу, дважды нажав на файл 123.owle
8. Включаем режим симулятора
9. В "Окне просмотра" нажимаем на кнопку троеточия в поле "Имя"
10. Появляется окно с сообщением об ошибке, приведенном выше.
Если после описанных действий удалить модуль расширения ПРМ-24.1 в меню "Настройки прибора", то ошибка не появляется и переменные просмотреть можно. При повторном добавлении модуля расширения, сохранении проекта, закрытии и открытии программы ошибка вновь появляется.
Подскажите, пожалуйста, как решить данную проблему?