System.ArgumentOutOfRangeException:InvalidArgument =' 0'的值对于' SelectedIndex'无效

时间:2017-07-16 23:36:48

标签: c# combobox video-capture aforge selectedindex

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

    foreach (FilterInfo Device in CaptureDevice)
    {
        comboBox1.Items.Add(Device.Name);
    }

如果机器上不存在设备,如何避免异常:

  

System.ArgumentOutOfRangeException:InvalidArgument =' 0'的值是   不适用于' SelectedIndex'。参数名称:SelectedIndex at   System.Windows.Forms.ComboBox.set_SelectedIndex(Int32 value)

1 个答案:

答案 0 :(得分:0)

在添加Device.Name之前,检查它是否存在于第一位

if(Device!= null){
     comboBox1.Items.Add(Device.Name);
}

另外,创建一个表示设备不存在的布尔值,如果找到则将其切换为true。像bool devExist = false;当device不为null时,devExist = true。 然后你就知道如果没有设备,如果(devExist){//做某事}

你就不会尝试访问它