可能原因:

1、下拉選單的選項資料繫結晚於 DataGridView 的資料繫結

2、下拉選單的 DataPropertyName 屬性,比 DisplayMember、ValueMember 早賦值

3、賦予 DataGridView 下拉選單的值,不在下拉選單的選項裡

4、賦予 DataGridView 下拉選單的值型別,與下拉選單的值型別不一致

網路上許多文章都指出,可用 DataError 事件排除掉這個錯誤提示,但這只是治標不治本。換句話來說就只是讓程式不提示這個錯誤而已,根本的問題還是沒解決。以下是筆者建議的解決方式:

1、當然就是先繫結下拉選項資料,再繫結 DataGridView,無論你的程式結構有多少層。

2、當然就是調整 DataPropertyName、DisplayMember、ValueMember 賦值的順序。

3、處理不在選項內的值,選項若有自己的資料來源,那麼就連同這個資料來源加上不在選項內的項目,全部用 Items.Add 做繫結,不要用 DataSource。要注意!Items.Add 和 DataSource 無法並存,關於這個部份,可以參考微軟官方的 MSDN 說明,重點摘錄如下:

Items 或 DataSource 属性用于填充组合框的选项。

如果已将字符串添加到 Items,则无需设置 ValueMember 和 DisplayMember 属性,因为添加的每个字符串都会用于值和显示。

4、型別不一致的狀況,目前還沒遇到,故暫時不給意見。

問題排查:DataGridView 資料行下拉選單,資料繫結階段顯示 DataGridViewComboBoxCell 值無效的更多相关文章

  1. 【jQuery获取下拉框select、单选框radio、input普通框的值和checkbox选中的个数】

    radio单选框:name属性相同 <input type="radio" id="sp_type" name="p_type" va ...

  2. 問題排查:行動裝置網頁前端 UI 設計 (1)

    這是最近開始接手的一個微信公眾平台專案, 在重整後端程式碼時,因為也需要透過前端來看效果, 所以就因此在前端的部分遇到了不少問題, 畢竟這是以前沒接觸過的領域 (早年的網頁應用程式開發沒有那麼多分工) ...

  3. 問題排查:在 ServiceModel 客戶端配置部份中,找不到名稱 和協定 的終結點元素。

    同樣都是刪掉服務參考再重建重編譯重發行,為什麼之前幾次都沒事? 這次只不過是刪掉服務參考,然後換了個名稱重建而已,做完就變這樣? 後來發現問題出在 app.config,因為之前 app.config ...

  4. 微信小程序-下拉松开弹不回去顶部留一段空白

    解决办法: 空白的出现有可能是多次触发下拉事件导致请求过多导致页面反应延迟. 在 onPullDownRefresh 事件里加setTimeout事件延迟下下拉刷新的事件. /** * 页面相关事件处 ...

  5. Bootstrap selectpicker 下拉框多选获取选中value和多选获取文本值

    1.页面代码: 页面引入: bootstrap-select.min.css和 bootstrap-select.min.js. defaults-zh_CN.min.js文件,并初始化下拉选项框. ...

  6. 問題排查:行動裝置網頁前端 UI 設計 (2)

    之前上網找了個星級評分的範例來玩, 當然這個範例已經用在另一個專案了, 目前看起來沒什麼狀況, 不過在移植到目前的專案之後, 就出現了怪現象: 1. 在大部份時間裡,點擊星星不會有任何反應 2. 即便 ...

  7. 問題排查:System.BadImageFormatException: 未能加载文件或程序集“System.ServiceModel

    錯誤訊息如下: System.BadImageFormatException: 未能加载文件或程序集“System.ServiceModel, Version=3.0.0.0, Culture=neu ...

  8. 問題排查:沒有任何多載符合 System.Timers.ElapsedEventHandler 委派

    這是在實作當前專案最後一個關鍵功能:提醒通知 所遇到的奇怪狀況 目前的設想,是以 Windows Form 結合 Timer,當作發送通知的載體 大家都知道在 C# 的環境裡,有三種內建的 Timer ...

  9. 問題排查:类型“System.DateTime”的对象无法转换为类型“System.String”

    最近在擴充資料對接工具的功能 經常會遇到這個狀況 當然還有其他同類提示,例如 int/decimal 無法轉 System.String 等等 無獨有偶 這些錯誤幾乎都是在 DataTable 轉換成 ...

随机推荐

  1. 18.虚拟机linux上网问题

    1.1.VMware中虚拟机网络的三种设置第一种:桥接(bridged)第二种:NAT第三种:Host only .该模式下仅主机可以上网,虚拟机不能上网. 1.2.虚拟机上网方式1:NAT方式设置步 ...

  2. 学习 Linux,101: Linux 命令行

    概述 本教程将简要介绍 bash shell 的一些主要特性,涵盖以下主题: 使用命令行与 shell 和命令交互 使用有效的命令和命令序列 定义.修改.引用和导出环境变量 访问命令历史和编辑工具 调 ...

  3. javascript运行模式:并发模型 与Event Loop

    看了阮一峰老师的JavaScript 运行机制详解:再谈Event Loop和[朴灵评注]的文章,查阅网上相关资料,把自己对javascript运行模式和EVENT loop的理解整理下,不一定对,日 ...

  4. 用Python读写Excel文件(转)

    原文:google.com/ncr 虽然天天跟数据打交道,也频繁地使用Excel进行一些简单的数据处理和展示,但长期以来总是小心地避免用Python直接读写Excel文件.通常我都是把数据保存为以TA ...

  5. Activity has leaked window that was originally added

    错误: E/WindowManager: android.view.WindowLeaked: Activity com.x.x.x has leaked window com.android.int ...

  6. ASP.NET 常用状态(信息)保存方式

    服务器端:Session(会话)/ Application/ Caching(缓存)/DataBase(数据库) Session: Session: 常用于保存登录用户ID.验证码 不同的浏览器不能共 ...

  7. (转)深入理解javascript连续赋值表达式

    引入 今天逛园子的时候看到一道javascript面试题,是关于连续赋值的,正好最近读jQuery源码经常看到这种连续赋值的表达式,所以很感兴趣. 废话不多说,来看题: var a = {n: 1} ...

  8. asp.net LINQ实现数据分页

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  9. css中外边距合并

    最近在布局时遇到一个有趣的问题 <style> #div1{width:200px;height:200px;background:red;}  #div2{width:50px;heig ...

  10. apache目录浏览

    DocumentRoot "/Library/WebServer/Documents" <Directory "/Library/WebServer/Documen ...