Neuron®
The Neuron® is the basis for the creation of open and secure federated networks for smart societies.
Loading...
Searching...
No Matches
CalcParameterInfo.cs
3using System;
4using System.Threading.Tasks;
5using System.Windows.Controls;
7using Waher.Script;
8
10{
15 {
16 private CalcParameter calcParameter;
17 private readonly TextBox textBox;
18
28 Property<ParameterInfo[]> Parameters)
29 : base(Contract, Parameter, Control, DesignModel, Parameters)
30 {
31 this.calcParameter = Parameter;
32 this.textBox = Control;
33 }
34
38 public override async Task<bool> ValidateParameter(Variables Variables)
39 {
40 bool Result = await this.calcParameter.IsParameterValid(Variables, this.designModel?.Network.Legal.Contracts);
41
42 this.ErrorReason = this.Parameter.ErrorReason;
43 this.ErrorText = this.Parameter.ErrorText;
44
45 if (Result)
46 {
47 object Value = this.Parameter.ObjectValue;
48
49 this.@value.Value = Value;
50 this.textBox.Text = MoneyToString.ToString(Value);
51 }
52
53 return Result;
54 }
55
59 public override object Value
60 {
61 get => this.@value.Value;
62 set => this.@value.Value = value;
63 }
64
66 public override void SetValue(string Value)
67 {
68 throw new InvalidOperationException("Read-only parameter.");
69 }
70
72 public override void ContractUpdated(Contract Contract)
73 {
74 base.ContractUpdated(Contract);
75 this.calcParameter = this.Parameter as CalcParameter;
76 }
77 }
78}
Calculation contractual parameter
override async Task< bool > IsParameterValid(Variables Variables, ContractsClient Client)
Checks if the parameter value is valid.
Contains the definition of a contract
Definition: Contract.cs:22
Abstract base class for contractual parameters
Definition: Parameter.cs:17
string ErrorText
After IsParameterValid(Variables) or IsParameterValid(Variables, ContractsClient) has been execited,...
Definition: Parameter.cs:131
abstract object ObjectValue
Parameter value.
Definition: Parameter.cs:104
ParameterErrorReason? ErrorReason
After IsParameterValid(Variables) or IsParameterValid(Variables, ContractsClient) has been execited,...
Definition: Parameter.cs:120
Collection of variables.
Definition: Variables.cs:25