/// <summary> /// Открывает новое окно для управления устройством /// </summary> /// <param name="device"></param> private void NewForm(Equipment device) { // Окно для этого устройства ещё не открыто Vkt5RemoteConsoleForm mainForm = new Vkt5RemoteConsoleForm(); // Заголовок окна mainForm.Text = "Удалённый пульт - " + device.ToString(); RemoteConsoleFormParams param = new RemoteConsoleFormParams(); // Параметры базовой формы опроса param.PollConnections = device.PollSettings.Connections; if (param.PollConnections != null && param.PollConnections.Length > 0) { param.SelectedConnection = param.PollConnections[0]; } // Параметры формы удалённого пульта param.Device = device; // Инициализация mainForm.Initialize(param, Plugin.Host.Server); Plugin.Host.MainWindow.AddPage(mainForm); mainForm.Show(); mainForm.FormClosed += new System.Windows.Forms.FormClosedEventHandler(currentForm_FormClosed); lock (this.visibleForms) { this.visibleForms.Add(mainForm); } }
/// <summary> /// Переопределяем инициализацию окна с удалённым пультом ВКТ-5 /// </summary> /// <param name="parameters"></param> /// <param name="server"></param> public override void Initialize(RemoteConsoleFormParams parameters, Lers.LersServer server) { base.Initialize(parameters, server); // Подписка на события подключения и отключения от удалённого устройства this.RemoteConsole.Connected += new EventHandler(RemoteConsole_Connected); this.RemoteConsole.Disconnected += new EventHandler(RemoteConsole_Disconnected); int networkAddress = 0; Int32.TryParse(parameters.Device.NetworkAddress, out networkAddress); // Инициализируем контрол с удалённым пультом this.vktConsoleControl.Initialize(this.RemoteConsole, networkAddress); }