コード例 #1
0
        /// <summary>
        /// Обработчик события нажатия на кнопку "Import"
        /// </summary>
        /// <remarks>
        /// Импортирует настройки из выбранного файла
        /// </remarks>
        private void ImportButton_Click(object sender, EventArgs e)
        {
            var dialogResult = openFileDialog1.ShowDialog();

            if (dialogResult == DialogResult.Abort || dialogResult == DialogResult.Cancel)
            {
                return;
            }

            DataContractJsonSerializer formatter = new DataContractJsonSerializer(typeof(SettingsClass));
            SettingsClass settings = null;

            using (FileStream fs = new FileStream(openFileDialog1.FileName, FileMode.Open))
            {
                try
                {
                    settings = (SettingsClass)formatter.ReadObject(fs);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Import Error");
                    return;
                }
            }

            MessageBox.Show("Import completed successfully.", "Completed");
            delayTextBox.Text = settings.Delay.ToString();
            ipTextBox.Text    = settings.Ip;
            servoTextBox.Text = settings.FinalPosition.ToString();
        }
コード例 #2
0
        /// <summary>
        /// Обработчик события нажатия на кнопку "Export"
        /// </summary>
        /// <remarks>
        /// Экспортирует настройки в выбранный файл
        /// </remarks>
        private void ExportButton_Click(object sender, EventArgs e)
        {
            SettingsClass exportSettings         = null;
            DataContractJsonSerializer formatter = new DataContractJsonSerializer(typeof(SettingsClass));

            try
            {
                exportSettings = new SettingsClass(ipTextBox.Text, delayTextBox.Text, servoTextBox.Text);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Export Error.");
                return;
            }

            if (saveFileDialog1.ShowDialog() != DialogResult.OK)
            {
                return;
            }

            using (FileStream fs = new FileStream(saveFileDialog1.FileName, FileMode.Create))
            {
                try
                {
                    formatter.WriteObject(fs, exportSettings);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Error");
                    return;
                }
            }

            MessageBox.Show("Export completed successfully.", "Completed");
        }
コード例 #3
0
        /// <summary>
        /// Обработчик события нажатия на кнопку "Apply"
        /// </summary>
        /// <remarks>
        /// Инициализирует объект класса SettingsClass, возвращает OK в качестве DialogResult и закрывает форму
        /// </remarks>
        private void applyButton_Click(object sender, EventArgs e)
        {
            try
            {
                settings = new SettingsClass("http://" + ipTextBox.Text + "/", delayTextBox.Text, servoTextBox.Text);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error");
                return;
            }

            DialogResult = DialogResult.OK;
            Close();
        }