public RegistersActionView() { InitializeComponent(); tbAddress.Validation = EntryViewValidation.UShortValidation(max: 247); tbCoil.Validation = EntryViewValidation.UShortValidation(); btOk.Click += (o, e) => { _action.Manager.Transport = transportView.Transport; _action.RegisterAddress = byte.Parse(tbCoil.Text); _action.SlaveAddress = byte.Parse(tbAddress.Text); _action.ModbusValueType = valueTypeView.ValueType; _action.WriteReadLength = valueTypeView.Length; _action.RegistersMode = _selectedRegistersMode; if (_action.ModbusValueType == NModbusWrapper.ValueType.String) { _action.ValueType = new InfoValueType(); } else { _action.ValueType = new FloatValueType() { AcceptedValues = new[] { tbMin.Text, tbMax.Text } } }; OkPressed?.Invoke(_action); }; valueTypeView.ValueTypeChanged += (o, e) => ReInitializeMaxAndMin(); btRegistersModeHolding.Click += (o, e) => _selectedRegistersMode = RegistersMode.Holding; btRegistersModeInput.Click += (o, e) => _selectedRegistersMode = RegistersMode.Input; btCancel.Click += (o, e) => CancelPressed?.Invoke(); }
public ModbusValueTypeSelectionView(ushort length, NModbusWrapper.ValueType valueType, ValueTypeMode mode) { InitializeComponent(); lvItems.SelectionChanged += (o, e) => { btOk.IsEnabled = lvItems.SelectedItem != null; if (lvItems.SelectedItem != null && ((ItemView)lvItems.SelectedItem).Tag.ToString().Equals("String")) { spStringLength.Visibility = Visibility.Visible; } else { spStringLength.Visibility = Visibility.Collapsed; } }; if (mode == ValueTypeMode.String) { lvItems.GetItems().Where(x => ((ItemView)x).Tag.ToString() != "String").ToList() .ForEach(x => ((ItemView)x).IsEnabled = false); } else if (mode == ValueTypeMode.Numeric) { lvItems.GetItems().Where(x => ((ItemView)x).Tag.ToString() == "String").ToList() .ForEach(x => ((ItemView)x).IsEnabled = false); } tbLength.Validation = EntryViewValidation.UShortValidation(min: 1); btCancel.Click += (o, e) => CancelPressed?.Invoke(); btOk.Click += (o, e) => OkPressed?.Invoke(); }
public SingleCoilActionView() { InitializeComponent(); tbAddress.Validation = EntryViewValidation.UShortValidation(max: 247); tbCoil.Validation = EntryViewValidation.UShortValidation(); btOk.Click += (o, e) => { _action.Manager.Transport = transportView.Transport; _action.CoilAddress = ushort.Parse(tbCoil.Text); _action.SlaveAddress = byte.Parse(tbAddress.Text); OkPressed?.Invoke(_action); }; btCancel.Click += (o, e) => { CancelPressed?.Invoke(); }; }
public void OnOkPressed() { OkPressed?.Invoke(this, null); }