Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如果datagridviewcombobox的值不在datagridviewcombobox列数据源中,我该怎么办?_C#_Datagridviewcombobox - Fatal编程技术网

C# 如果datagridviewcombobox的值不在datagridviewcombobox列数据源中,我该怎么办?

C# 如果datagridviewcombobox的值不在datagridviewcombobox列数据源中,我该怎么办?,c#,datagridviewcombobox,C#,Datagridviewcombobox,我遇到了一种情况,下拉列表必须只包含“活动”对象。但是,这并不意味着当前组合框值将在列表中(它是在对象处于活动状态时选择的,但不再处于活动状态) 按照现在的情况,出现了一个异常。。我认为在datagridview的dataerror处理程序中,该值不在列表中 我需要做的是查找在填充每个datagridview行时激发的一些事件,以便检查combobox值是否在combobox数据源中。。。如果不是,我会加上。这是我能看到的唯一解决办法。但问题是,我应该使用哪个事件处理程序 最好是,我希望能够对该

我遇到了一种情况,下拉列表必须只包含“活动”对象。但是,这并不意味着当前组合框值将在列表中(它是在对象处于活动状态时选择的,但不再处于活动状态)

按照现在的情况,出现了一个异常。。我认为在datagridview的dataerror处理程序中,该值不在列表中

我需要做的是查找在填充每个datagridview行时激发的一些事件,以便检查combobox值是否在combobox数据源中。。。如果不是,我会加上。这是我能看到的唯一解决办法。但问题是,我应该使用哪个事件处理程序

最好是,我希望能够对该检查进行泛化,并将其放入从datagridview继承的类中。这样,我就再也不用担心这个问题了

有什么想法吗


Isaac

您可以尝试
数据绑定完成
事件。其他选项包括
DataMemberChanged
DataSourceChanged


在没有看到一些代码的情况下,很难判断哪个事件是最合适的。

我不熟悉第一对事件,我将尝试它们。我只是在数据源更改后检查每个单元格,看看它是否是ComboxCell。如果是,我将其valuemember与数据源列表进行核对。如果它不在里面,我就加上了。添加似乎发生在关键时刻。。没有抛出任何数据错误。谢谢你,安娜@IsaacB您还可以先确定哪些列是
datagridviewcomboxcolumn
,然后只检查这些列中的单元格,从而消除许多单元格。没错!我真懒,竟然把它们都检查一遍。