• DataGridView中comboBox(DataGridViewComboBoxColumn)的事件编写


    DataGridView中虽然绑定了一个comboBox,但是这个comboBox没有任何事件。

    今天想加一个SelectedIndexChanged事件,遍寻网络后找到一可行方法,总结如下:

     

    ·········10········20········30········40········50········60········70········80········90········100·······110·······120·······130·······140·······150
    1. DataGridViewComboBoxColumn Fparmrangedesc = new DataGridViewComboBoxColumn();  
    2. ……  
    3. ……  
    4. dgView.Columns.Add(Fparmrangedesc);  
    5. dgView.EditingControlShowing += new DataGridViewEditingControlShowingEventHandler(dgView_EditingControlShowing); //主要是这句  
    6.   
    7. 写事件方法  
    8. private void dgView_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)  
    9. {  
    10.     if (dgvReportParms.CurrentCell.GetType().Name == "DataGridViewComboBoxCell")  
    11.             {  
    12.                 ((ComboBox)e.Control).SelectedIndexChanged -= new EventHandler(ComboBox_SelectedIndexChanged);  
    13.                 ((ComboBox)e.Control).SelectedIndexChanged += new EventHandler(ComboBox_SelectedIndexChanged);  
    14.             }  
    15. }  
    16.   
    17. private void ComboBox_SelectedIndexChanged(object sender, EventArgs e)  
    18. {  
    19. //里面想写什么你说了算!  
    20. }  

    最后,最重要的一步:把DataGridView的CausesValidation属性一定要改为false.(这一步是为什么我还没有搞清楚,希望各位高手帮我解释一下!谢谢了!)

  • 相关阅读:
    01_计算机基础
    09_哈希表
    08_查找算法
    Swagger使用
    Thymeleaf代码实例
    Spring boot代码实例
    Spring mvc代码实例
    Hibernate代码实例
    Mysql JDBC代码实例
    Mybatis代码实例
  • 原文地址:https://www.cnblogs.com/hyruur/p/2312319.html
Copyright © 2020-2023  润新知