/// <summary> /// 获取对象实例 /// </summary> /// <param name="signalSourceType">仪表ID 型号</param> /// <returns></returns> public static ISignalSource GetInstance(SignalSourceType signalSourceType) { switch (signalSourceType) { case SignalSourceType.Agilent_E4400: return(new Agilent_E4400()); case SignalSourceType.HP_8360: return(new HP_8360()); case SignalSourceType.RS_SMHU: return(new HP_8360()); case SignalSourceType.RS_SMA100A: return(new HP_8360()); case SignalSourceType.RS_SMBV100A: return(new HP_8360()); case SignalSourceType.Ceyear_AV1431: return(new AV1431()); case SignalSourceType.Ceyear_AV146X: return(new AV1431()); default: return(null); } }
private void btnSigOpen_Click(object sender, RoutedEventArgs e) { SignalSourceType type = (SignalSourceType)(this.cmbSigType.SelectedIndex); string addr = this.tbSigAddr.Text; if (!isSignalSourceConnected) { signalSource = SignalSource.GetInstance(type); isSignalSourceConnected = signalSource.Connect(addr); if (isSignalSourceConnected) { this.btnSigOpen.Background = sucessColor; } else { this.btnSigOpen.Background = normalColor; } } else { this.btnSigOpen.Background = sucessColor; } }