protected override string ParameterValueToCode(MethodInfo methodInfo) { if (IsRegExp) { var encoded = ParameterValue.Replace("\\", "\\\\"); return("\"" + encoded + "\""); } else { return("\"" + ParameterValue + "\""); } }
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(); }
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, "Ошибка"); } }