Beispiel #1
0
 protected override string ParameterValueToCode(MethodInfo methodInfo)
 {
     if (IsRegExp)
     {
         var encoded = ParameterValue.Replace("\\", "\\\\");
         return("\"" + encoded + "\"");
     }
     else
     {
         return("\"" + ParameterValue + "\"");
     }
 }
Beispiel #2
0
        private void BtnAdd_OnClick(object sender, RoutedEventArgs e)
        {
            ParameterValue = ParameterValue.Replace(".", ",");
            var result = Double.TryParse(ParameterValue, out var feedValue);

            if (result)
            {
                ParameterValue = feedValue + StepFeed <= MaxValue ? (feedValue + StepFeed).ToString($"F{_digit}") : MaxValue.ToString($"F{_digit}");
            }
            else
            {
                MessageBox.Show("В строке не содержится число", "Ошибка!");
            }

            SelText();
        }
Beispiel #3
0
        private void Save()
        {
            try
            {
                ParameterValue = ParameterValue.Replace(".", ",");
                var result = Double.TryParse(ParameterValue, out _finishValue);
                if (result)
                {
                    if (_finishValue <= MaxValue && _finishValue >= MinValue)
                    {
                        switch (_valueType)
                        {
                        case ValueType.Byte:
                            _opc.cl.WriteByte(_opcTag, Convert.ToByte(_finishValue), out _err);
                            break;

                        case ValueType.Int16:
                            _opc.cl.WriteInt16(_opcTag, Convert.ToInt16(_finishValue), out _err);
                            if (!string.IsNullOrEmpty(_additionalTag))
                            {
                                _opc.cl.WriteInt16(_additionalTag, Convert.ToInt16(_finishValue), out _err);
                            }
                            break;

                        case ValueType.Int32:
                            _opc.cl.WriteInt32(_opcTag, Convert.ToInt32(_finishValue), out _err);
                            break;

                        case ValueType.Real:
                            _opc.cl.WriteReal(_opcTag, (float)_finishValue, out _err);
                            break;

                        case ValueType.UInt16:
                            _opc.cl.WriteUInt16(_opcTag, Convert.ToUInt16(_finishValue), out _err);
                            break;

                        case ValueType.UInt32:
                            _opc.cl.WriteUInt32(_opcTag, Convert.ToUInt32(_finishValue) * 1000, out _err);
                            break;
                        }
                        EventsBase.GetInstance().GetControlEvents(OpcServer.OpcList.Rbu).AddEvent("Параметр \"" + ParameterName + "\" изменен с " + _startValue + " на " + _finishValue.ToString($"F{_digit}"), SystemEventType.UserDoing);
                        if (_err)
                        {
                            MessageBox.Show("Возможно запись не прошла.\nПроверьте OPC-сервер или соответствующий тег", "Предупреждение");
                        }
                        Close();
                    }
                    else
                    {
                        MessageBox.Show("Введите число в заданном диапазоне. Повторите ввод", "Предупреждение");
                    }
                }
                else
                {
                    MessageBox.Show("В строке не содержится число", "Ошибка!");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Запись не прошла. Повторите ввод\n" + ex.Message, "Ошибка");
            }
        }