private void addControlFor(WeightedTenorPoint def_) { var contrl = new CMTStructurePointEditor(); flowLayoutPanel1.Controls.Add(contrl); subscribe(contrl); contrl.Bind(def_); sortOutPositioning(); }
internal void Bind(WeightedTenorPoint def_) { Definition = def_; tbMult.Bind(Definition, "Multiplier", new Validators.DoubleValidator("##0.0##")); tbPoint.Bind(Definition, "Tenor", new Validators.IntValidator()); if(cmbMarket.Items.Count==0) cmbMarket.AddItems(LiveMarkets.Markets); cmbMarket.Bind(Definition, "Market", new Validators.EnumDescValidator(BondMarket.DE)); }
public static WeightedTenorPoint[] InterpretQuickInputString_old(string input_) { var matches = regex.Matches(input_.ToUpper()); if (matches.Count == 0) return null; var arr = new WeightedTenorPoint[matches.Count]; for (int i = 0; i < arr.Length; ++i) { var match = matches[i]; BondMarket market; if (!Enum.TryParse(match.Groups["Market"].Value, out market)) return null; int tenor = int.Parse(match.Groups["Point"].Value); if (tenor < 1 || tenor > 30) return null; arr[i] = new WeightedTenorPoint() { Market = market, Tenor = tenor }; } switch (arr.Length) { case 1: arr[0].Multiplier = 1d; break; case 2: arr[0].Multiplier = -1d; arr[1].Multiplier = 1d; break; case 3: arr[0].Multiplier = -1d; arr[1].Multiplier = 2d; arr[2].Multiplier = -1d; break; default: Array.ForEach(arr, x => x.Multiplier = 1d); break; } return arr; }
private void add() { var item = new WeightedTenorPoint(); m_points.Add(item); addControlFor(item); }