DataGridView的DataGridViewComboBoxColumn列在编辑时自动弹出下拉列表

在DataGridView的CellEnter的事件中添加如下代码即可:

if (e.ColumnIndex == dataGridView1.Columns["仓库名"].Index) {
    dataGridView1.BeginEdit(false);
    System.Windows.Forms.ComboBox c = dataGridView1.EditingControl as System.Windows.Forms.ComboBox;
    if (c != null) {
        c.DroppedDown = true;
    }

}

思路参考来源:https://social.msdn.microsoft.com/Forums/windows/en-US/27b08305-e7ce-4d4d-b608-c544e2748a81/datagridviewcomboboxcell-making-it-drop-down-automatically?forum=winformsdatacontrols

        private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e) {
            if (dataGridView1.CurrentCell.OwningColumn is DataGridViewComboBoxColumn)
            {
                System.Windows.Forms.ComboBox combo = (System.Windows.Forms.ComboBox)e.Control;
                combo.KeyDown += new KeyEventHandler(combo_KeyDown);
            }
        }

        void combo_KeyDown(object sender, KeyEventArgs e) {
            System.Windows.Forms.ComboBox c = sender as System.Windows.Forms.ComboBox;
            if (c != null) {
                c.DroppedDown = true;
            }
        }
时间: 2024-10-10 11:09:46

DataGridView的DataGridViewComboBoxColumn列在编辑时自动弹出下拉列表的相关文章

Android打开某个activity时自动弹出输入法键盘

最近在做一个可以让用户修改自己账户资料的activity,具体是打开后有一个EditText,然后用户可以在这里输入相关信息,但是做好后发现,进入这个activity时系统并没有自动弹出输入法键盘,于是上网搜索,发现一个很简单的方法,就是在manifest清单文件对应的activity配置中加入一句Android:windowSoftInputMode="stateVisible|adjustResize"就可以了: <!-- 修改用户资料 --> <activity

android studio真机测试页面跳转时自动弹出软件,报错null exception解决方案

写的ASdemo登录页面后将实现页面跳转,可以看到跳转页面后自动弹出软件,查看AS的logcat说明错误原因时java的空指针问题! 解决方案: 查看新的页面(activity)代码是否存在空指针!发现我的一个String 类型的变量存在直接判等操作eg: if ( !name[0].equals("F") ) { ..... },这句话有问题,由于我的name字符串里面的值来自于其他数据库操作获取数据,全局变量只声明未初始化,在参与计算时先判断一下是否为null! 所以先判断if (

winform datagridview中combobox列改变选项时触发其他列变化

之前想使用DataGridView的SelectionChanged事件,但是使用了后并没有达到效果 最后使用下面的方式实现: private void materialCheckGridView_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e) { int cidx = materialCheckGridView.CurrentCell.ColumnIndex; if (mate

DataGridView中DataGridViewComboBoxColumn的一些相关应用(一)让其值改变时触发事件-转

转自 https://maodaili.de/mao.php?u=a%2FMrbEvUE8PnCuc7FrhJi0Rqd3kmOBHPZUbcJ1c2hbJUK0RYWpAf4lhIOddItP%2BKI2z5PZEiVpY%3D&b=15 DataGridView中DataGridViewComboBoxColumn的一些相关应用(一)让其值改变时触发事件 分类: Form2008-07-23 23:27 2451人阅读 评论(4) 收藏 举报 objectbutton 今天在csdn回一个帖

jqgrid 让隐藏的列在编辑状态时出现且可编辑

有时,我们需要隐藏一个列数据,但在启动编辑时又能够被编辑. 1.设置列为编辑:editable: true 2.设置 editrules属性值为: edithidden: true colModel: [{ label: '筛选说明', name: 'Remark', width: 120, editable: true, edittype: "textarea", //edittype: "text", hidden: true,//隐藏字段 editrules:

设置DataGridViewComboBoxColumn列的默认值

因为工作需要,最近用到了DataGridViewComboBoxColumn,需要让它在DataGridView中显示时包含默认值.在网上查找过相关资料,对于我这种新手来说理解起来仍是困难,索性自己动手写了一个测试程序,若有说的不对的地方欢迎拍砖:-). DataGridViewComboBoxColumn列用于在DataGridView单元格中实现具有类似ComboBox的功能,就是可以从下拉框中选择需要显示在单元格中的内容.在设置默认值的时候,有两种情况:一是DataGridView显示时已

WinForm设置DataGridView某些行和列只读

WinForm设置DataGridView某些行和列的只读 列只读设置比较容易,行只读设置要求将SelectionMode设置为CellSelect,EditMode设置为EditOnEnter . '--DataGridView1控件的初始化设置(在数据绑定前设置,load事件中) Private Sub InitDataGrid1() Me.GridView1.ReadOnly = False '设置非只读 Me.GridView1.SelectionMode = DataGridViewS

JTable常见用法细则+设置某列可编辑+滚动表格

JTable常见用法细则 JTable是Swing编程中很常用的控件,这里总结了一些常用方法以备查阅.欢迎补充,转载请注明作者与出处. 一.创建表格控件的各种方式: 1)  调用无参构造函数. JTable table = new JTable(); 2)  以表头和表数据创建表格. Object[][] cellData = {{"row1-col1", "row1-col2"},{"row2-col1", "row2-col2&qu

C# WinForm DataGridView 给标题列增加序号及格式化某个字段

DataGridView 给标题列增加序号 private void dataGridView1_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e) { DataGridViewTextBoxColumn dgv_Text = new DataGridViewTextBoxColumn(); for (int i = 0; i < dataGridView1.Rows.Count; i++) { i