C# System.ArgumentOutOfRangeException:InvalidArgument=的值';0';对';无效;选择索引';

C# System.ArgumentOutOfRangeException:InvalidArgument=的值';0';对';无效;选择索引';,c#,combobox,video-capture,aforge,selectedindex,C#,Combobox,Video Capture,Aforge,Selectedindex,如果这样,我可以列出现有的视频捕获设备: foreach (FilterInfo Device in CaptureDevice) { comboBox1.Items.Add(Device.Name); } 如果机器上不存在设备,如何避免异常: System.ArgumentOutOfRangeException:InvalidArgument=0的值为 对于“SelectedIndex”无效。参数名称:SelectedIndex at System.W

如果这样,我可以列出现有的视频捕获设备:

    foreach (FilterInfo Device in CaptureDevice)
    {
        comboBox1.Items.Add(Device.Name);
    }
如果机器上不存在设备,如何避免异常:

System.ArgumentOutOfRangeException:InvalidArgument=0的值为 对于“SelectedIndex”无效。参数名称:SelectedIndex at System.Windows.Forms.ComboBox.set\u SelectedIndex(Int32值)


在添加Device.Name之前,首先检查它是否存在

if(Device!= null){
     comboBox1.Items.Add(Device.Name);
}
另外,创建一个指示设备不存在的布尔值,如果找到该设备,则将其切换为true。类似于bool-devExist=false;当设备不为null时,devExist=true。 然后,如果(devExist){//do something},您就会知道那里是否没有设备,如果没有iti,您也不会尝试访问它