zoukankan      html  css  js  c++  java
  • DataGridViewComboBoxColumn 可以让用户输入并自动匹配选项的问题

    private void dgvInfoPerson_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
            {
                
    if (dgvInfoPerson.CurrentCellAddress.X == dgvInfoPerson.Columns["colCboDeptNo"].Index)
                {
                    cbo 
    = e.Control as ComboBox;
                    
    if (cbo != null)
                    {
                        cbo.DropDownStyle 
    = ComboBoxStyle.DropDown;
                        cbo.AutoCompleteMode 
    = AutoCompleteMode.SuggestAppend;
                    }
                }
            }

            
    private void dgvInfoPerson_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
            {
                
    if (dgvInfoPerson.CurrentCellAddress.X == dgvInfoPerson.Columns["colCboDeptNo"].Index)
                {
                    
    //问题出在这里.如果你输入的是ValueMember的值的话就没问题.但你如果输入的是DisplayMember的值的话就不会选中.
                    
    //如ValueMember="MAN" DisplayMember="管理部",如果你在此单元格输入MAN就没问题,但输入管理部就不会选中.但用户就应该是输入管理部
                      
    //而不是输入MAN.
                    dgvInfoPerson.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = e.FormattedValue;
                }
            }

    截图

     Demo下载:http://download.csdn.net/source/903727
    已经搜过很多地方了.都没好的解决方案.还请各位有经验的前辈指点迷津.谢谢!

  • 相关阅读:
    【CSS】盒子模型的计算
    【CSS】定义元素的位置
    【Jenkins】安装插件
    安装【Jenkins】
    Python【unittest】模块
    Python【pyyaml】模块
    CentOS下安装gcc和gdb
    汇编学习笔记(15)综合研究
    汇编学习笔记(14)BIOS对键盘输入的处理
    汇编学习笔记(13)直接定址表
  • 原文地址:https://www.cnblogs.com/moss_tan_jun/p/2227681.html
Copyright © 2011-2022 走看看