public FastOOB() { m_oFastOOBPanel = new Panels.FastOOB_Panel(); VM = new ViewModels.FastOOBViewModel(); /// <summary> /// setup bindings: /// </summary> m_oFastOOBPanel.EmpireComboBox.Bind(c => c.DataSource, VM, d => d.Factions); m_oFastOOBPanel.EmpireComboBox.Bind(c => c.SelectedItem, VM, d => d.CurrentFaction, DataSourceUpdateMode.OnPropertyChanged); m_oFastOOBPanel.EmpireComboBox.DisplayMember = "Name"; VM.FactionChanged += (s, args) => CurrentFaction = VM.CurrentFaction; CurrentFaction = VM.CurrentFaction; m_oFastOOBPanel.EmpireComboBox.SelectedIndexChanged += (s, args) => m_oFastOOBPanel.EmpireComboBox.DataBindings["SelectedItem"].WriteValue(); m_oFastOOBPanel.EmpireComboBox.SelectedIndexChanged += new EventHandler(EmpireComboBox_SelectedIndexChanged); m_oFastOOBPanel.TaskGroupComboBox.Bind(c => c.DataSource, VM, d => d.TaskGroups); m_oFastOOBPanel.TaskGroupComboBox.Bind(c => c.SelectedItem, VM, d => d.CurrentTaskGroup, DataSourceUpdateMode.OnPropertyChanged); m_oFastOOBPanel.TaskGroupComboBox.DisplayMember = "Name"; VM.TaskGroupChanged += (s, args) => CurrentTaskGroup = VM.CurrentTaskGroup; CurrentTaskGroup = VM.CurrentTaskGroup; m_oFastOOBPanel.TaskGroupComboBox.SelectedIndexChanged += (s, args) => m_oFastOOBPanel.TaskGroupComboBox.DataBindings["SelectedItem"].WriteValue(); m_oFastOOBPanel.TaskGroupComboBox.SelectedIndexChanged += new EventHandler(TaskGroupComboBox_SelectedIndexChanged); m_oFastOOBPanel.ClassComboBox.Bind(c => c.DataSource, VM, d => d.ShipDesigns); m_oFastOOBPanel.ClassComboBox.Bind(c => c.SelectedItem, VM, d => d.CurrentShipClass, DataSourceUpdateMode.OnPropertyChanged); m_oFastOOBPanel.ClassComboBox.DisplayMember = "Name"; VM.ShipClassChanged += (s, args) => CurrentShipClass = VM.CurrentShipClass; CurrentShipClass = VM.CurrentShipClass; m_oFastOOBPanel.ClassComboBox.SelectedIndexChanged += (s, args) => m_oFastOOBPanel.ClassComboBox.DataBindings["SelectedItem"].WriteValue(); m_oFastOOBPanel.ClassComboBox.SelectedIndexChanged += new EventHandler(ClassComboBox_SelectedIndexChanged); m_oFastOOBPanel.AddButton.Click += new EventHandler(AddButton_Click); m_oFastOOBPanel.CloseButton.Click += new EventHandler(CloseButton_Click); m_oFastOOBPanel.NumberTextBox.TextChanged += new EventHandler(NumberTextBox_TextChanged); }