Изолировать и использовать только один случай с переключателем для использования только одного трекбара - PullRequest
0 голосов
/ 10 ноября 2018

У меня есть код, который получает данные из сети и заставляет некоторые трекбары двигаться.

Каждый трекбар перемещается в соответствии с соответствующим каналом.

Для этого есть оператор "switch":

private void OnChannelFade(object sender, OSCPacket packet)
    {   
       this.BeginInvoke(new ThreadSafeOSC(ThreadSafeOnChannelFade), packet.ToParams());            
    }

    private void ThreadSafeOnChannelFade(OSCPacket packet)
    {
         TrackBar trackBar = GetTrackBarFromChannel(Convert.ToInt32(packet.Nodes[2]));

           trackBar.Tag = packet;
          trackBar.Value = (int)(packet.Arguments[0].ToFloat() * 100);
    }

    private TrackBar GetTrackBarFromChannel(int channel)
    {
        pan2.Value = channel;
        switch (channel)
        {
            case 1:
            case 9:
            case 17:
            case 25:

                return fader1;

Как выделить один случай, другими словами, как связать один трекбар, чтобы получать данные только из одного канала?

...