DataGridView中的ComboboxCell报了System.ArgumentException:DagaGridViewComboBoxCell值无效错误

原因是初始化的时候给ComboboxCell绑定了一系列的值,但是真正赋值的时候却给了一个不在那一系列值范围中的值,所以就报了这个错

在开发的时候难免会因为数据的问题出现这个问题,为了不让系统崩掉,就要处理这个错误信息

但是怎么捕捉并处理这个异常呢?

我也不知道怎么捕捉,但是我知道DataGridView已经有了一个处理数据错误的事件,DataGridView.DataError事件,在这个事件中可以对这个异常进行处理

dgvSpec.DataError += dgvSpec_DataError;

/// <summary>
        /// 处理数据异常的情况
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void dgvSpec_DataError(object sender, DataGridViewDataErrorEventArgs e)
        {
            LogHelper.WriteLog("试剂字典", "获取数据", "存在异常数据,请检查导入数据是否完整:" + e.Exception.Message);
            DialogMsgHelper.ShowExcepitonMsg("数据异常", e.Exception, string.Format("规格信息第{0}行第{1}列数据异常,可能由于导入的数据不完整导致的,请检查数据是否完整", e.RowIndex + 1, e.ColumnIndex + 1));
            e.Cancel = true;
        }
时间: 2024-10-05 09:58:33

DataGridView中的ComboboxCell报了System.ArgumentException:DagaGridViewComboBoxCell值无效错误的相关文章

x509.PrivateKey报“指定的提供程序类型无效”错误

坑死了,折腾了一天,在这里留个纪念. x509.PrivateKey报"指定的提供程序类型无效"错误. 网上搜一大堆,全都是误人子弟的东西,大致的意思是: 操作系统升级后证书中的私钥是以CngKey的方式存在, http://clrsecurity.codeplex.com 提供了RSACng的封装,使用如下: if (x509.HasCngKey()) var privateKey = x509.GetCngPrivateKey(); .net4.6 以后的版本提供了对x509的扩展

Repeater控件中触发按钮事件出现System.ArgumentException: 回发或回调参数无效。在配置中使用 &lt; pages enableEventValidation=&quot;true&quot;/&gt;

今天,在Repeater控件中添加了一个按钮,可是在执行时确提示 System.ArgumentException: 回发或回调参数无效.在配置中使用 < pages enableEventValidation="true"/> <asp:Repeater ID="rpList" runat="server" OnItemCommand="rpList_ItemCommand"> <ItemTem

微信小程序报错:id 属性值格式错误。如不能以数字开头。

出现这个报错时,相信很多人都排除过自己标签上写的id是否有以数字命名的,如果你排除了发现并没有,但是这个报错还是存在,那么我接下来分享的这个情况或者能报到你 这次我也遇到这个报错,最终找出问题所在 这里的scroll-into-view属性是scroll-view组件中的,这里涉及到锚点知识,根据下面文档的提示,toView值是不能以数字开头的,所以当时顺其自然就想到用‘#’符号作为初始值,没想到还是出现问题,虽然这个问题不影响程序运行,但是说明这里不仅不能使用数字开头,也不能使用符号(试过其他

System.ArgumentException: 已添加项。字典中的关键字:XX 所添加的关键字:XX

    异常详细信息: System.ArgumentException: 已添加项.字典中的关键字:"sftj_dt"所添加的关键字:"sftj_dt" 这是在给Hashtable添加值的时候报的错 是在Hashtable中Key有重复值了,可以用 table.Remove(tableID); 先把值排除再添加就可以了

DataGridView 中发生以下异常: System.Exception: 是 不是 Decimal 的有效值。 ---&gt; System.FormatException: 输入字符串的格式不正确。

其实之前我自己是没测出这个问题的,但是一放到测试的手上就出来了,原因我知道在哪里改输什么东西,但是人家不知道啊.报错如下: --------------------------- "DataGridView 默认错误"对话框 --------------------------- DataGridView 中发生以下异常: System.Exception: 是 不是 Decimal 的有效值. ---> System.FormatException: 输入字符串的格式不正确.

C#读取Excel表格数据到DataGridView中和导出DataGridView中的数据到Excel

其实想在datagridview中显示excel表格中的数据跟读取数据库中的数据没什么差别,只不过是创建数据库连接的时候连接字段稍有差别. private void btnShow_Click(object sender, EventArgs e) { OpenFileDialog fd = new OpenFileDialog();//首先根据打开文件对话框,选择excel表格 ofd.Filter = "表格|*.xls";//打开文件对话框筛选器 string strPath;/

DataGridView中内置控件常用事件使用心得

checkbox,button,imagebutton使用dataGridView1_CellContentClick private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) { tb.Text+=string.Format("\r\n{0},Row:{1},Column:{2}","单元格内容单击!",e.RowIndex,e.ColumnInd

SharePoint 2013 引发类型为“System.ArgumentException”的异常。 参数名: encodedValue

SharePoint 2013 引发类型为"System.ArgumentException"的异常. 参数名: encodedValue 详细错误信息 说明: 执行当前 Web 请求期间,出现未经处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息. 异常详细信息: System.ArgumentException: 引发类型为"System.ArgumentException"的异常. 参数名: encodedValue 源错误:

DataGridView中添加CheckBox(与DataSource分开添加) &amp; C# winform单元格的formatted值的类型错误异常解决

1,编辑DataGridView,添加一列 CheckBox ,Name 赋值为 "select",ColumnType 设置为"dATAGridViewCheckBoxColumn",HeaderTest 可以设置为想要的列名,如下图: 2. Debag 显示窗体的时候,会报 “System.FormatException:单元格的Formatted值的类型错误.要替换此默认对话框,请处理DataError事件" 的异常,点击确定出现新的提示: [Dat