private void SaveDataInRelay() { // метод сохраняет данные считанные или записанные в устройство для // возможности вывода соот. информации о необходимости обновить информацию InRelayCtrlProgramsOptions.Clear(); foreach (CtrlProgramOptionsClass PrOp in CtrlProgramsOptions) InRelayCtrlProgramsOptions.Add((CtrlProgramOptionsClass)PrOp.Clone()); InRelayDeviceOptions = (DeviceOptionsClass)DeviceOptions.Clone(); label95.Visible = false; }
private void OpenFile() { DialogResult DialogRes; DialogRes = openFileDialog1.ShowDialog(); if (DialogRes == DialogResult.OK) { try { DataInFileClass2 DataInFile = new DataInFileClass2(); // создать объект того вида, в котором данные сохранены в файл // получить сериализатор IFormatter serializer = new BinaryFormatter(); // десериализировать данные из файла FileStream loadFile = new FileStream(openFileDialog1.FileName, FileMode.Open, FileAccess.Read); //DeviceOptions = serializer.Deserialize(loadFile) as DeviceOptionsClass; DataInFile = serializer.Deserialize(loadFile) as DataInFileClass2; loadFile.Close(); DeviceOptions = DataInFile.DeviceOptions; CtrlProgramsOptions = DataInFile.CtrlProgramsOptions; UpdateAllFormElements(); // обновить всю информацию в окнах //MessageBox.Show("Настройки устройства и управляющих программ успешно загружены из файла:\n" + PathOfFile, "Сообщение", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); PathOfFile = openFileDialog1.FileName; char ch = '\\'; char ch1 = '.'; this.Text = stNovatek[LangGlobal] + ": " + PathOfFile.Split(ch)[PathOfFile.Split(ch).Length - 1].Split(ch1)[0]; } catch { MessageBox.Show(stNotGoogFile[LangGlobal], stAttention[LangGlobal], MessageBoxButtons.OK, MessageBoxIcon.Error); } } else if (DialogRes == DialogResult.Cancel) { } else { MessageBox.Show(stFileNotFind[LangGlobal], stAttention[LangGlobal], MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } }