private void CreateMidiBindings() { foreach (Channel m in VMixer.MixChannels) { m.FaderLevel.PropertyChanged += new PropertyChangedEventHandler((sender, e) => MidiManager.HandleSendFaderMsg(sender, e, m)); m.On.PropertyChanged += new PropertyChangedEventHandler((sender, e) => MidiManager.HandleSendOnMsg(sender, e, m)); if (m.GetType() == typeof(MixChannel)) { //MixChannel specific properties are bound here //((MixChannel)m).eq.on.PropertyChanged += new PropertyChangedEventHandler((sender, e) => MidiManager.HandleSendOnMsg(sender, e, m)); } if (m.GetType() == typeof(AuxChannel)) { //AuxChannel specific properties are bound here } if (m.GetType() == typeof(MixBus)) { //MixBus specific properties are bound here } } foreach (DCA dca in VMixer.DCAs) { dca.FaderLevel.PropertyChanged += new PropertyChangedEventHandler((sender, e) => MidiManager.HandleDCAFaderUpdate(sender, e, dca)); } }