public ItemToShow(HowLongMarathonItemViewModel baseInstance) { // Initialize base fields foreach (PropertyInfo pi in typeof(HowLongMarathonItemViewModel).GetProperties()) { GetType().GetProperty(pi.Name)?.SetValue(this, pi.GetValue(baseInstance, null), null); } }
public DistanceItemViewModel(HowLongMarathonItemViewModel item, IMarathonDistance marathonDistance) : base(item) { _marathonDistance = marathonDistance; // Convert kilometers to meters double meters = _marathonDistance.Value * 1000; // Calculate items count to cover marathon distance ItemsCount = (long)Math.Ceiling(meters / Value); }
public SpeedItemViewModel(HowLongMarathonItemViewModel item, IMarathonDistance marathonDistance) : base(item) { _marathonDistance = marathonDistance; // Calculate time to elapse ElapseTime = TimeSpan.FromMinutes((_marathonDistance.Value / Value) * 60); }