I have an Observable collection containing some properties. My requirement is i want to iterate through observable collection properties and store/add properties from budgetReportYear1 to budgetReportYear30 in a separate list (double type).
Model:-
namespace RedCube45Mvvm.Model
{
public class RangeData : INotifyPropertyChanged
{
#region Constructor
public RangeData(MainWindowViewModel viewModel)
{
m_ViewModel = viewModel;
}
#endregion
#region Fields
private MainWindowViewModel m_ViewModel;
private string name;
private int fleet_size;
private double availability;
#endregion
#region Properties
public string Name
{
get { return name; }
set
{
name = value;
}
}
public double Availability
{
get { return availability; }
set
{
availability = value;
Onchanged("Availability");
var u = new Operations.Process.Updater(m_ViewModel, this, "avail");
}
}
public int FleetSize
{
get { return fleet_size; }
set
{
fleet_size = value;
Onchanged("FleetSize");
var u = new Operations.Process.Updater(m_ViewModel, this, "fleetSize");
}
}
#endregion
#region Budget Report Year
private double _budgetReportYear1 = 1;
private double _budgetReportYear2 = 1;
private double _budgetReportYear3 = 1;
private double _budgetReportYear4 = 1;
private double _budgetReportYear5 = 1;
private double _budgetReportYear6 = 1;
private double _budgetReportYear7 = 1;
private double _budgetReportYear8 = 1;
private double _budgetReportYear9 = 1;
private double _budgetReportYear10 = 1;
private double _budgetReportYear11 = 1;
private double _budgetReportYear12 = 1;
private double _budgetReportYear13 = 1;
private double _budgetReportYear14 = 1;
private double _budgetReportYear15 = 1;
private double _budgetReportYear16 = 1;
private double _budgetReportYear17 = 1;
private double _budgetReportYear18 = 1;
private double _budgetReportYear19 = 1;
private double _budgetReportYear20 = 1;
private double _budgetReportYear21 = 1;
private double _budgetReportYear22 = 1;
private double _budgetReportYear23 = 1;
private double _budgetReportYear24 = 1;
private double _budgetReportYear25 = 1;
private double _budgetReportYear26 = 1;
private double _budgetReportYear27 = 1;
private double _budgetReportYear28 = 1;
private double _budgetReportYear29 = 1;
private double _budgetReportYear30 = 1;
public bool Loaded { get; set; }
public double budgetReportYear1
{
get { return _budgetReportYear1; }
set
{
_budgetReportYear1 = value;
Onchanged("budgetReportYear1");
}
}
public double budgetReportYear2
{
get { return _budgetReportYear2; }
set
{
_budgetReportYear2 = value;
Onchanged("budgetReportYear2");
}
}
public double budgetReportYear3
{
get { return _budgetReportYear3; }
set
{
_budgetReportYear3 = value;
Onchanged("budgetReportYear3");
}
}
public double budgetReportYear4
{
get { return _budgetReportYear4; }
set
{
_budgetReportYear4 = value;
Onchanged("budgetReportYear4");
}
}
public double budgetReportYear5
{
get { return _budgetReportYear5; }
set
{
_budgetReportYear5 = value;
Onchanged("budgetReportYear5");
}
}
public double budgetReportYear6
{
get { return _budgetReportYear6; }
set
{
_budgetReportYear6 = value;
Onchanged("budgetReportYear6");
}
}
public double budgetReportYear7
{
get { return _budgetReportYear7; }
set
{
_budgetReportYear7 = value;
Onchanged("budgetReportYear7");
}
}
public double budgetReportYear8
{
get { return _budgetReportYear8; }
set
{
_budgetReportYear8 = value;
Onchanged("budgetReportYear8");
}
}
public double budgetReportYear9
{
get { return _budgetReportYear9; }
set
{
_budgetReportYear9 = value;
Onchanged("budgetReportYear9");
}
}
public double budgetReportYear10
{
get { return _budgetReportYear10; }
set
{
if (value < 0.01 || value > 99)
{
throw new ArgumentException("Value must be within 0.01 & 99");
}
_budgetReportYear10 = value;
Onchanged("budgetReportYear10");
}
}
public double budgetReportYear11
{
get { return _budgetReportYear11; }
set
{
_budgetReportYear11 = value;
Onchanged("budgetReportYear11");
}
}
public double budgetReportYear12
{
get { return _budgetReportYear12; }
set
{
_budgetReportYear12 = value;
Onchanged("budgetReportYear12");
}
}
public double budgetReportYear13
{
get { return _budgetReportYear13; }
set
{
_budgetReportYear13 = value;
Onchanged("budgetReportYear13");
}
}
public double budgetReportYear14
{
get { return _budgetReportYear14; }
set
{
_budgetReportYear14 = value;
Onchanged("budgetReportYear14");
}
}
public double budgetReportYear15
{
get { return _budgetReportYear15; }
set
{
_budgetReportYear15 = value;
Onchanged("budgetReportYear15");
}
}
public double budgetReportYear16
{
get { return _budgetReportYear16; }
set
{
_budgetReportYear16 = value;
Onchanged("budgetReportYear16");
}
}
public double budgetReportYear17
{
get { return _budgetReportYear17; }
set
{
_budgetReportYear17 = value;
Onchanged("budgetReportYear17");
}
}
public double budgetReportYear18
{
get { return _budgetReportYear18; }
set
{
_budgetReportYear18 = value;
Onchanged("budgetReportYear18");
}
}
public double budgetReportYear19
{
get { return _budgetReportYear19; }
set
{
_budgetReportYear19 = value;
Onchanged("budgetReportYear19");
}
}
public double budgetReportYear20
{
get { return _budgetReportYear20; }
set
{
_budgetReportYear20 = value;
Onchanged("budgetReportYear20");
}
}
public double budgetReportYear21
{
get { return _budgetReportYear21; }
set
{
_budgetReportYear21 = value;
Onchanged("budgetReportYear21");
}
}
public double budgetReportYear22
{
get { return _budgetReportYear22; }
set
{
_budgetReportYear22 = value;
Onchanged("budgetReportYear22");
}
}
public double budgetReportYear23
{
get { return _budgetReportYear23; }
set
{
_budgetReportYear23 = value;
Onchanged("budgetReportYear23");
}
}
public double budgetReportYear24
{
get { return _budgetReportYear24; }
set
{
_budgetReportYear24 = value;
Onchanged("budgetReportYear24");
}
}
public double budgetReportYear25
{
get { return _budgetReportYear25; }
set
{
_budgetReportYear25 = value;
Onchanged("budgetReportYear25");
}
}
public double budgetReportYear26
{
get { return _budgetReportYear26; }
set
{
_budgetReportYear26 = value;
Onchanged("budgetReportYear26");
}
}
public double budgetReportYear27
{
get { return _budgetReportYear27; }
set
{
_budgetReportYear27 = value;
Onchanged("budgetReportYear27");
}
}
public double budgetReportYear28
{
get { return _budgetReportYear28; }
set
{
_budgetReportYear28 = value;
Onchanged("budgetReportYear28");
}
}
public double budgetReportYear29
{
get { return _budgetReportYear29; }
set
{
_budgetReportYear29 = value;
Onchanged("budgetReportYear29");
}
}
public double budgetReportYear30
{
get { return _budgetReportYear30; }
set
{
_budgetReportYear30 = value;
Onchanged("budgetReportYear30");
}
}
public string Error
{
get { throw new NotImplementedException(); }
}
#endregion
#region Event Handler
public event PropertyChangedEventHandler PropertyChanged;
public void Onchanged(string name)
{
if (PropertyChanged != null)
PropertyChanged(this, new PropertyChangedEventArgs(name));
}
#endregion
}
}
View Model:-
public ObservableCollection<Model.RangeData> RangeData
{
get { return range_data; }
set {
range_data = value;
base.RaisePropertyChangedEvent("RangeData");
}
}