Unit selection in UI.Procedures.ProcedureDlg and UI.Procedures.TestWizard, ver. 3.1.1801
This commit is contained in:
@@ -32,6 +32,12 @@ namespace TBF.Rig.DataContainer.BenchInfo
|
||||
public int WaterMetersCount { get { return myCfg.WaterMetersCount; } }
|
||||
public int LinesCount { get { return myCfg.LinesCount; } }
|
||||
public int CompoundMetersCount { get { return myCfg.CompoundMetersCount; } }
|
||||
public Unit VolumeUnit { get { return myCfg.VolumeUnit; } }
|
||||
public Unit FlowUnit { get { return myCfg.FlowUnit; } }
|
||||
public Unit MassUnit { get { return myCfg.MassUnit; } }
|
||||
public Unit TempUnit { get { return myCfg.TempUnit; } }
|
||||
public Unit PressUnit { get { return myCfg.PressUnit; } }
|
||||
public Unit LengthUnit { get { return myCfg.LenghtUnit; } }
|
||||
|
||||
public ICollection<ProcedureSelection> Source
|
||||
{
|
||||
|
||||
@@ -36,10 +36,16 @@ namespace TBF.Rig.DataContainer.BenchInfo
|
||||
public int WaterMetersCount; /// 10
|
||||
public int LinesCount; /// 11
|
||||
public int CompoundMetersCount; /// 12
|
||||
public ProcedureSelection Source1; /// 13
|
||||
public ProcedureSelection Source2; /// 14
|
||||
public ProcedureSelection Source3; /// 15
|
||||
public ProcedureSelection Source4; /// 16
|
||||
public Unit VolumeUnit; /// 13
|
||||
public Unit FlowUnit; /// 14
|
||||
public Unit MassUnit; /// 15
|
||||
public Unit TempUnit; /// 16
|
||||
public Unit PressUnit; /// 17
|
||||
public Unit LenghtUnit; /// 18
|
||||
public ProcedureSelection Source1; /// 19
|
||||
public ProcedureSelection Source2; /// 20
|
||||
public ProcedureSelection Source3; /// 21
|
||||
public ProcedureSelection Source4; /// 22
|
||||
|
||||
/// Private parameterless constructor invoked by all other (public) constructors
|
||||
ComponentCfg() {}
|
||||
@@ -70,6 +76,12 @@ namespace TBF.Rig.DataContainer.BenchInfo
|
||||
WaterMetersCount = 20;
|
||||
LinesCount = 2;
|
||||
CompoundMetersCount = 1;
|
||||
VolumeUnit = Unit.l;
|
||||
FlowUnit = Unit.m3ph;
|
||||
MassUnit = Unit.kg;
|
||||
TempUnit = Unit.C;
|
||||
PressUnit = Unit.bar;
|
||||
LenghtUnit = Unit.mm;
|
||||
Source1 = ProcedureSelection.FromLocalDB;
|
||||
Source2 = ProcedureSelection.None;
|
||||
Source3 = ProcedureSelection.None;
|
||||
@@ -91,6 +103,12 @@ namespace TBF.Rig.DataContainer.BenchInfo
|
||||
"Water meters count", /// 10
|
||||
"Lines count", /// 11
|
||||
"Compound meters count", /// 12
|
||||
"Preffered volume unit",
|
||||
"Preffered flow unit",
|
||||
"Preffered mass unit",
|
||||
"Preffered temperature unit",
|
||||
"Preffered pressure unit",
|
||||
"Preffered lenght unit",
|
||||
"Procedure selection source 1", /// 13
|
||||
"Procedure selection source 2", /// 14
|
||||
"Procedure selection source 3", /// 15
|
||||
@@ -101,6 +119,8 @@ namespace TBF.Rig.DataContainer.BenchInfo
|
||||
|
||||
public ICollection<string> ParamValues(int i)
|
||||
{
|
||||
var list = new List<string>();
|
||||
|
||||
switch (i)
|
||||
{
|
||||
case 10:
|
||||
@@ -111,15 +131,42 @@ namespace TBF.Rig.DataContainer.BenchInfo
|
||||
return new string[] { "0", "1", "2", "3" };
|
||||
|
||||
case 13:
|
||||
for (Unit unit = 0; unit < Unit.Count; unit++)
|
||||
if (Units.IsQuantity(unit, Quantity.Volume))
|
||||
list.Add(unit.ToDescription());
|
||||
return list;
|
||||
case 14:
|
||||
for (Unit unit = 0; unit < Unit.Count; unit++)
|
||||
if (Units.IsQuantity(unit, Quantity.Flow))
|
||||
list.Add(unit.ToDescription());
|
||||
return list;
|
||||
case 15:
|
||||
for (Unit unit = 0; unit < Unit.Count; unit++)
|
||||
if (Units.IsQuantity(unit, Quantity.Mass))
|
||||
list.Add(unit.ToDescription());
|
||||
return list;
|
||||
case 16:
|
||||
IList<string> items = new List<string>();
|
||||
for (Unit unit = 0; unit < Unit.Count; unit++)
|
||||
if (Units.IsQuantity(unit, Quantity.Temperature))
|
||||
list.Add(unit.ToDescription());
|
||||
return list;
|
||||
case 17:
|
||||
for (Unit unit = 0; unit < Unit.Count; unit++)
|
||||
if (Units.IsQuantity(unit, Quantity.Pressure))
|
||||
list.Add(unit.ToDescription());
|
||||
return list;
|
||||
case 18:
|
||||
for (Unit unit = 0; unit < Unit.Count; unit++)
|
||||
if (Units.IsQuantity(unit, Quantity.Length))
|
||||
list.Add(unit.ToDescription());
|
||||
return list;
|
||||
case 19:
|
||||
case 20:
|
||||
case 21:
|
||||
case 22:
|
||||
for (ProcedureSelection src = 0; src < ProcedureSelection.Count; src++)
|
||||
{
|
||||
items.Add(src.ToDescription());
|
||||
}
|
||||
return items;
|
||||
list.Add(src.ToDescription());
|
||||
return list;
|
||||
|
||||
default:
|
||||
return null;
|
||||
@@ -143,10 +190,16 @@ namespace TBF.Rig.DataContainer.BenchInfo
|
||||
case 10: return WaterMetersCount.ToString();
|
||||
case 11: return LinesCount.ToString();
|
||||
case 12: return CompoundMetersCount.ToString();
|
||||
case 13: return Source1.ToDescription();
|
||||
case 14: return Source2.ToDescription();
|
||||
case 15: return Source3.ToDescription();
|
||||
case 16: return Source4.ToDescription();
|
||||
case 13: return VolumeUnit.ToDescription();
|
||||
case 14: return FlowUnit.ToDescription();
|
||||
case 15: return MassUnit.ToDescription();
|
||||
case 16: return TempUnit.ToDescription();
|
||||
case 17: return PressUnit.ToDescription();
|
||||
case 18: return LenghtUnit.ToDescription();
|
||||
case 19: return Source1.ToDescription();
|
||||
case 20: return Source2.ToDescription();
|
||||
case 21: return Source3.ToDescription();
|
||||
case 22: return Source4.ToDescription();
|
||||
default:
|
||||
return string.Format("{0}: Bench={1}, ID={2}, Mtrs={3}, Lines={4}, Compund mtrs={5}, S1={6}, S2={7}, S3={8}, S4={9}",
|
||||
Name, TestBenchName, TestBenchId, WaterMetersCount, LinesCount, CompoundMetersCount, Source1, Source2, Source3, Source4);
|
||||
@@ -172,27 +225,51 @@ namespace TBF.Rig.DataContainer.BenchInfo
|
||||
case 12: CompoundMetersCount = int.Parse(str); return CfgUpdateFlags.RestartRqrd;
|
||||
|
||||
case 13:
|
||||
VolumeUnit = Units.FromDescription(str);
|
||||
return CfgUpdateFlags.RestartRqrd;
|
||||
|
||||
case 14:
|
||||
FlowUnit = Units.FromDescription(str);
|
||||
return CfgUpdateFlags.RestartRqrd;
|
||||
|
||||
case 15:
|
||||
MassUnit = Units.FromDescription(str);
|
||||
return CfgUpdateFlags.RestartRqrd;
|
||||
|
||||
case 16:
|
||||
TempUnit = Units.FromDescription(str);
|
||||
return CfgUpdateFlags.RestartRqrd;
|
||||
|
||||
case 17:
|
||||
PressUnit = Units.FromDescription(str);
|
||||
return CfgUpdateFlags.RestartRqrd;
|
||||
|
||||
case 18:
|
||||
LenghtUnit = Units.FromDescription(str);
|
||||
return CfgUpdateFlags.RestartRqrd;
|
||||
|
||||
case 19:
|
||||
for (ProcedureSelection source = 0; source < ProcedureSelection.Count; source++)
|
||||
{
|
||||
if (str == source.ToDescription()) { Source1 = source; return CfgUpdateFlags.RestartRqrd; }
|
||||
}
|
||||
break;
|
||||
|
||||
case 14:
|
||||
case 20:
|
||||
for (ProcedureSelection source = 0; source < ProcedureSelection.Count; source++)
|
||||
{
|
||||
if (str == source.ToDescription()) { Source2 = source; return CfgUpdateFlags.RestartRqrd; }
|
||||
}
|
||||
break;
|
||||
|
||||
case 15:
|
||||
case 21:
|
||||
for (ProcedureSelection source = 0; source < ProcedureSelection.Count; source++)
|
||||
{
|
||||
if (str == source.ToDescription()) { Source3 = source; return CfgUpdateFlags.RestartRqrd; }
|
||||
}
|
||||
break;
|
||||
|
||||
case 16:
|
||||
case 22:
|
||||
for (ProcedureSelection source = 0; source < ProcedureSelection.Count; source++)
|
||||
{
|
||||
if (str == source.ToDescription()) { Source4 = source; return CfgUpdateFlags.RestartRqrd; }
|
||||
@@ -237,6 +314,14 @@ namespace TBF.Rig.DataContainer.BenchInfo
|
||||
case 14:
|
||||
case 15:
|
||||
case 16:
|
||||
case 17:
|
||||
case 18:
|
||||
if (ParamValues(i).Contains(str)) return true;
|
||||
break;
|
||||
case 19:
|
||||
case 20:
|
||||
case 21:
|
||||
case 22:
|
||||
for (ProcedureSelection source = 0; source < ProcedureSelection.Count; source++)
|
||||
{
|
||||
if (str == source.ToDescription()) return true;
|
||||
@@ -266,6 +351,12 @@ namespace TBF.Rig.DataContainer.BenchInfo
|
||||
prms.WaterMetersCount = this.WaterMetersCount;
|
||||
prms.LinesCount = this.LinesCount;
|
||||
prms.CompoundMetersCount = this.CompoundMetersCount;
|
||||
prms.VolumeUnit = this.VolumeUnit;
|
||||
prms.FlowUnit = this.FlowUnit;
|
||||
prms.MassUnit = this.MassUnit;
|
||||
prms.TempUnit = this.TempUnit;
|
||||
prms.PressUnit = this.PressUnit;
|
||||
prms.LenghtUnit = this.LenghtUnit;
|
||||
prms.Source1 = this.Source1;
|
||||
prms.Source2 = this.Source2;
|
||||
prms.Source3 = this.Source3;
|
||||
|
||||
@@ -33,6 +33,12 @@ namespace TBF.Rig.DataContainer.iPerlBenchInfo
|
||||
public int WaterMetersCount { get { return myCfg.WaterMetersCount; } }
|
||||
public int LinesCount { get { return myCfg.LinesCount; } }
|
||||
public int CompoundMetersCount { get { return myCfg.CompoundMetersCount; } }
|
||||
public Unit VolumeUnit { get { return myCfg.VolumeUnit; } }
|
||||
public Unit FlowUnit { get { return myCfg.FlowUnit; } }
|
||||
public Unit MassUnit { get { return myCfg.MassUnit; } }
|
||||
public Unit TempUnit { get { return myCfg.TempUnit; } }
|
||||
public Unit PressUnit { get { return myCfg.PressUnit; } }
|
||||
public Unit LengthUnit { get { return myCfg.LenghtUnit; } }
|
||||
public Side Side { get { return myCfg.Side; } }
|
||||
public int MaxTestIndex { get { return myCfg.MaxTestIndex; } } /// (MaxPruefindex % 100) value when to reject water meters completely if they are NOK
|
||||
|
||||
|
||||
@@ -37,12 +37,18 @@ namespace TBF.Rig.DataContainer.iPerlBenchInfo
|
||||
public int WaterMetersCount; /// 10
|
||||
public int LinesCount; /// 11
|
||||
public int CompoundMetersCount; /// 12
|
||||
public Side Side; /// 13
|
||||
public int MaxTestIndex; /// 14 (MaxPruefindex % 100) value when to reject water meters completely if they are NOK
|
||||
public ProcedureSelection Source1; /// 15
|
||||
public ProcedureSelection Source2; /// 16
|
||||
public ProcedureSelection Source3; /// 17
|
||||
public ProcedureSelection Source4; /// 18
|
||||
public Unit VolumeUnit;
|
||||
public Unit FlowUnit;
|
||||
public Unit MassUnit;
|
||||
public Unit TempUnit;
|
||||
public Unit PressUnit;
|
||||
public Unit LenghtUnit;
|
||||
public Side Side; /// 19
|
||||
public int MaxTestIndex; /// 20 (MaxPruefindex % 100) value when to reject water meters completely if they are NOK
|
||||
public ProcedureSelection Source1; /// 21
|
||||
public ProcedureSelection Source2; /// 22
|
||||
public ProcedureSelection Source3; /// 23
|
||||
public ProcedureSelection Source4; /// 24
|
||||
|
||||
/// Calibration info serialized parameters displayed in Metrology tab page
|
||||
string calibCertificateNr;
|
||||
@@ -94,6 +100,12 @@ namespace TBF.Rig.DataContainer.iPerlBenchInfo
|
||||
WaterMetersCount = 20;
|
||||
LinesCount = 2;
|
||||
CompoundMetersCount = 1;
|
||||
VolumeUnit = Unit.l;
|
||||
FlowUnit = Unit.m3ph;
|
||||
MassUnit = Unit.kg;
|
||||
TempUnit = Unit.C;
|
||||
PressUnit = Unit.bar;
|
||||
LenghtUnit = Unit.mm;
|
||||
Side = Side.Left;
|
||||
MaxTestIndex = 4;
|
||||
Source1 = ProcedureSelection.FromSharedDB;
|
||||
@@ -117,18 +129,26 @@ namespace TBF.Rig.DataContainer.iPerlBenchInfo
|
||||
"Water meters count", /// 10
|
||||
"Lines count", /// 11
|
||||
"Compound meters count", /// 12
|
||||
Strings.Side, /// 13
|
||||
"Max.test index", /// 14
|
||||
"Procedure selection source 1", /// 15
|
||||
"Procedure selection source 2", /// 16
|
||||
"Procedure selection source 3", /// 17
|
||||
"Procedure selection source 4", /// 18
|
||||
"Preffered volume unit",
|
||||
"Preffered flow unit",
|
||||
"Preffered mass unit",
|
||||
"Preffered temperature unit",
|
||||
"Preffered pressure unit",
|
||||
"Preffered lenght unit",
|
||||
Strings.Side, /// 19
|
||||
"Max.test index", /// 20
|
||||
"Procedure selection source 1", /// 21
|
||||
"Procedure selection source 2", /// 22
|
||||
"Procedure selection source 3", /// 23
|
||||
"Procedure selection source 4", /// 24
|
||||
};
|
||||
public string ParamName(int i) { return paramNames[i]; }
|
||||
public int ParamsCount() { return paramNames.Length; }
|
||||
|
||||
public ICollection<string> ParamValues(int i)
|
||||
{
|
||||
var list = new List<string>();
|
||||
|
||||
switch (i)
|
||||
{
|
||||
case 10:
|
||||
@@ -138,20 +158,47 @@ namespace TBF.Rig.DataContainer.iPerlBenchInfo
|
||||
case 12:
|
||||
return new string[] { "0", "1", "2", "3" };
|
||||
case 13:
|
||||
IList<string> list = new List<string>();
|
||||
for (Side side = 0; side < Side.Count; side++) list.Add(side.ToDescription());
|
||||
for (Unit unit = 0; unit < Unit.Count; unit++)
|
||||
if (Units.IsQuantity(unit, Quantity.Volume))
|
||||
list.Add(unit.ToDescription());
|
||||
return list;
|
||||
case 14:
|
||||
for (Unit unit = 0; unit < Unit.Count; unit++)
|
||||
if (Units.IsQuantity(unit, Quantity.Flow))
|
||||
list.Add(unit.ToDescription());
|
||||
return list;
|
||||
case 15:
|
||||
for (Unit unit = 0; unit < Unit.Count; unit++)
|
||||
if (Units.IsQuantity(unit, Quantity.Mass))
|
||||
list.Add(unit.ToDescription());
|
||||
return list;
|
||||
case 16:
|
||||
for (Unit unit = 0; unit < Unit.Count; unit++)
|
||||
if (Units.IsQuantity(unit, Quantity.Temperature))
|
||||
list.Add(unit.ToDescription());
|
||||
return list;
|
||||
case 17:
|
||||
for (Unit unit = 0; unit < Unit.Count; unit++)
|
||||
if (Units.IsQuantity(unit, Quantity.Pressure))
|
||||
list.Add(unit.ToDescription());
|
||||
return list;
|
||||
case 18:
|
||||
for (Unit unit = 0; unit < Unit.Count; unit++)
|
||||
if (Units.IsQuantity(unit, Quantity.Length))
|
||||
list.Add(unit.ToDescription());
|
||||
return list;
|
||||
case 19:
|
||||
for (Side side = 0; side < Side.Count; side++)
|
||||
list.Add(side.ToDescription());
|
||||
return list;
|
||||
|
||||
case 15:
|
||||
case 16:
|
||||
case 17:
|
||||
case 18:
|
||||
IList<string> items = new List<string>();
|
||||
case 21:
|
||||
case 22:
|
||||
case 23:
|
||||
case 24:
|
||||
for (ProcedureSelection src = 0; src < ProcedureSelection.Count; src++)
|
||||
{
|
||||
items.Add(src.ToDescription());
|
||||
}
|
||||
return items;
|
||||
list.Add(src.ToDescription());
|
||||
return list;
|
||||
|
||||
default:
|
||||
return null;
|
||||
@@ -175,12 +222,18 @@ namespace TBF.Rig.DataContainer.iPerlBenchInfo
|
||||
case 10: return WaterMetersCount.ToString();
|
||||
case 11: return LinesCount.ToString();
|
||||
case 12: return CompoundMetersCount.ToString();
|
||||
case 13: return Side.ToDescription();
|
||||
case 14: return MaxTestIndex.ToString();
|
||||
case 15: return Source1.ToDescription();
|
||||
case 16: return Source2.ToDescription();
|
||||
case 17: return Source3.ToDescription();
|
||||
case 18: return Source4.ToDescription();
|
||||
case 13: return VolumeUnit.ToDescription();
|
||||
case 14: return FlowUnit.ToDescription();
|
||||
case 15: return MassUnit.ToDescription();
|
||||
case 16: return TempUnit.ToDescription();
|
||||
case 17: return PressUnit.ToDescription();
|
||||
case 18: return LenghtUnit.ToDescription();
|
||||
case 19: return Side.ToDescription();
|
||||
case 20: return MaxTestIndex.ToString();
|
||||
case 21: return Source1.ToDescription();
|
||||
case 22: return Source2.ToDescription();
|
||||
case 23: return Source3.ToDescription();
|
||||
case 24: return Source4.ToDescription();
|
||||
default:
|
||||
return string.Format("{0}: Bench={1}, ID={2}, Mtrs={3}, Lines={4}, Compund mtrs={5}, S1={6}, S2={7}, S3={8}, S4={9}",
|
||||
Name, TestBenchName, TestBenchId, WaterMetersCount, LinesCount, CompoundMetersCount, Source1, Source2, Source3, Source4);
|
||||
@@ -206,6 +259,30 @@ namespace TBF.Rig.DataContainer.iPerlBenchInfo
|
||||
case 12: CompoundMetersCount = int.Parse(str); return CfgUpdateFlags.RestartRqrd;
|
||||
|
||||
case 13:
|
||||
VolumeUnit = Units.FromDescription(str);
|
||||
return CfgUpdateFlags.RestartRqrd;
|
||||
|
||||
case 14:
|
||||
FlowUnit = Units.FromDescription(str);
|
||||
return CfgUpdateFlags.RestartRqrd;
|
||||
|
||||
case 15:
|
||||
MassUnit = Units.FromDescription(str);
|
||||
return CfgUpdateFlags.RestartRqrd;
|
||||
|
||||
case 16:
|
||||
TempUnit = Units.FromDescription(str);
|
||||
return CfgUpdateFlags.RestartRqrd;
|
||||
|
||||
case 17:
|
||||
PressUnit = Units.FromDescription(str);
|
||||
return CfgUpdateFlags.RestartRqrd;
|
||||
|
||||
case 18:
|
||||
LenghtUnit = Units.FromDescription(str);
|
||||
return CfgUpdateFlags.RestartRqrd;
|
||||
|
||||
case 19:
|
||||
for (Side side = 0; side < Side.Count; side++)
|
||||
{
|
||||
if (str == side.ToDescription())
|
||||
@@ -223,30 +300,30 @@ namespace TBF.Rig.DataContainer.iPerlBenchInfo
|
||||
}
|
||||
return CfgUpdateFlags.Error;
|
||||
|
||||
case 14: MaxTestIndex = int.Parse(str); return CfgUpdateFlags.RestartRqrd;
|
||||
case 20: MaxTestIndex = int.Parse(str); return CfgUpdateFlags.RestartRqrd;
|
||||
|
||||
case 15:
|
||||
case 21:
|
||||
for (ProcedureSelection source = 0; source < ProcedureSelection.Count; source++)
|
||||
{
|
||||
if (str == source.ToDescription()) { Source1 = source; return CfgUpdateFlags.RestartRqrd; }
|
||||
}
|
||||
break;
|
||||
|
||||
case 16:
|
||||
case 22:
|
||||
for (ProcedureSelection source = 0; source < ProcedureSelection.Count; source++)
|
||||
{
|
||||
if (str == source.ToDescription()) { Source2 = source; return CfgUpdateFlags.RestartRqrd; }
|
||||
}
|
||||
break;
|
||||
|
||||
case 17:
|
||||
case 23:
|
||||
for (ProcedureSelection source = 0; source < ProcedureSelection.Count; source++)
|
||||
{
|
||||
if (str == source.ToDescription()) { Source3 = source; return CfgUpdateFlags.RestartRqrd; }
|
||||
}
|
||||
break;
|
||||
|
||||
case 18:
|
||||
case 24:
|
||||
for (ProcedureSelection source = 0; source < ProcedureSelection.Count; source++)
|
||||
{
|
||||
if (str == source.ToDescription()) { Source4 = source; return CfgUpdateFlags.RestartRqrd; }
|
||||
@@ -286,18 +363,26 @@ namespace TBF.Rig.DataContainer.iPerlBenchInfo
|
||||
if (int.TryParse(str, out idummy) && idummy >= 0 && idummy <= 3) return true;
|
||||
break;
|
||||
case 13:
|
||||
case 14:
|
||||
case 15:
|
||||
case 16:
|
||||
case 17:
|
||||
case 18:
|
||||
if (ParamValues(i).Contains(str)) return true;
|
||||
break;
|
||||
case 19:
|
||||
for (Side side = 0; side < Side.Count; side++)
|
||||
{
|
||||
if (str == side.ToDescription()) return true;
|
||||
}
|
||||
break;
|
||||
case 14:
|
||||
case 20:
|
||||
if (int.TryParse(str, out idummy) && (idummy >= 0)) return true;
|
||||
break;
|
||||
case 15:
|
||||
case 16:
|
||||
case 17:
|
||||
case 18:
|
||||
case 21:
|
||||
case 22:
|
||||
case 23:
|
||||
case 24:
|
||||
for (ProcedureSelection source = 0; source < ProcedureSelection.Count; source++)
|
||||
{
|
||||
if (str == source.ToDescription()) return true;
|
||||
@@ -327,6 +412,12 @@ namespace TBF.Rig.DataContainer.iPerlBenchInfo
|
||||
prms.WaterMetersCount = this.WaterMetersCount;
|
||||
prms.LinesCount = this.LinesCount;
|
||||
prms.CompoundMetersCount = this.CompoundMetersCount;
|
||||
prms.VolumeUnit = this.VolumeUnit;
|
||||
prms.FlowUnit = this.FlowUnit;
|
||||
prms.MassUnit = this.MassUnit;
|
||||
prms.TempUnit = this.TempUnit;
|
||||
prms.PressUnit = this.PressUnit;
|
||||
prms.LenghtUnit = this.LenghtUnit;
|
||||
prms.Side = this.Side;
|
||||
prms.MaxTestIndex = this.MaxTestIndex;
|
||||
prms.Source1 = this.Source1;
|
||||
|
||||
Reference in New Issue
Block a user