Dev GridView RowCellClick事件与MouseDown事件

GridView处于可编辑状态,左键点击默认为“进入编辑”。
将GridView的OptionsColumn.AllowEdit设置为false后左键可触发RowCellClick。
但有时候,既希望GridView可以进行编译,又希望可以触发【单元格的点击事件】,比如有需求要求在某列单元格上单击可以弹出窗体,选择数据并返回到GridView上,并且允许手动在GridView上修改或者输入,那应该怎么处理呢?

用GridView的MouseDown事件,具体代码如下:

private void gViewActPara_MouseDown(object sender, MouseEventArgs e)
        {
            GridHitInfo hint = gViewActPara.CalcHitInfo(e.X, e.Y);
            if (gViewActPara.RowCount == 0 || /*记录数大于0*/
                    !hint.InRowCell /*有效的单元格*/||
                e.Button != MouseButtons.Left /*鼠标左键*/||
                    e.Clicks != 1  /*单击*/
                )
            {
                return;
            }
            if (hint.Column.FieldName == "需要弹出窗体的列名及该列的FieldName")
            {
                //强转当前行(避免鼠标点击的行与焦点行FocusedRowHandle不一致,鼠标点击时,焦点行FocusedRowHandle还未转换)
                gViewActPara.FocusedRowHandle = hint.RowHandle;
				//打开窗体的代码及处理略
				//如果获取到打开窗体的值之后,需要更新到GridView上使用
				// gViewActPara.SetRowCellValue(hint.RowHandle, "需要接受值列的FieldName",从窗体获取到的值);
                //使用SetRowCellValue会触发gViewActPara_CellValueChanged事件
            }
        }

小注:

不管这一列OptionsColumn.AllowEdit是不是false,只要这一列有MouseDown事件,就不会执行该列的RowCellClick事件。

时间: 2024-10-26 21:25:46

Dev GridView RowCellClick事件与MouseDown事件的相关文章

高分求救我一命 dev gridView rowcellclick事件怎么触发

问题描述 大虾们自己先试下,dev的GridControl的gridview的一个事件问题事件:gridView2_RowCellClick为什么这个事件是鼠标右键单击触发怎么让他单击左键触发呢费解啊 解决方案 解决方案二:你的Grid处于可编辑状态,左键点击默认为"进入编辑".将GridView的OptionBehavior-Editable设置为false后左键可触发.解决方案三:引用1楼davinciyxw的回复: 你的Grid处于可编辑状态,左键点击默认为"进入编辑&

DEV gridview如何捕获行双击事件

private void ViewHtlb_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left && e.Clicks == 2) // 判断是否是用鼠标双击 { DevExpress.XtraGrid.Views.Grid.ViewInfo.GridHitInfo ghi = ViewHtlb.CalcHitInfo(new Point(e.X, e.Y)); if (ghi.InR

DevExpress GridView 列标题点击事件

GridView有RowCellClick事件,即单元格点击事件,但是针对列标题行以及列标题单元格却没有相应的事件. 在这里使用GridView的MouseDown事件.这里同样使用的是GridHitInfo来获取点击位置的信息,来判断是否在列标题上.GridHitInfo根据鼠标点击的x.y坐标获取该点的相关信息,判断是否点击在列标题行内. private void gridView_MouseDown(object sender, MouseEventArgs e) { //鼠标左键点击 i

触摸屏-求助,关于mousedown事件在win8触屏下失效

问题描述 求助,关于mousedown事件在win8触屏下失效 使用老电脑win7系统编程,对一个按钮做了mousedown事件,win7下鼠标点击都正常.后来拿到新的超极本win8触摸屏使用,长按按钮变成win8系统默认的右键功能,出现一个透明小框,完全失去了mousedown的功能.ps:用鼠标操作依旧正常,但程序想在触摸屏下运行.有遇到过同样问题的人吗?求解决方案.谢谢!--我真没有币悬赏了.TT 解决方案 因为 Win8 支持触摸屏了,长按鼠标相当于以前的右键功能 .Mouse Down

javascript-asp.net中gridview的内置删除事件为什么不能弹出js提示

问题描述 asp.net中gridview的内置删除事件为什么不能弹出js提示 如下,当删除失败之后,后面输出的js不能弹出来 protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) { Button button = GridView1.Rows[e.RowIndex].FindControl("Button1") as Button; int albumId = Convert.T

android gridview- Android 的GridView的图片点击事件问题

问题描述 Android 的GridView的图片点击事件问题 我现在不知道GridView的长度,怎么一一对应给它的每个图片添加点击事件啊.我现在是写了grid.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView<?> arg0 View arg1 int arg2long arg3)这个方法,通过判断arg2的来确定我点的哪个图片,我现在的问题是我不知道如何通过点击相应

图片选择-Android中gridview中item点击事件及选中标记

问题描述 Android中gridview中item点击事件及选中标记 求大神帮忙,gridview中的item我加载了一个CheckBox我在适配器中设置了CheckBox的点击事件,gridview的item 点击事件就不能得到触发,现在我想实现的是点击某一个item,对这个item进行标记,再次点击就消除标记!就像QQ上的选中图片,然后进行预览和发送一样的效果,求大神解答 解决方案 将布局文件中的checkbox的属性设置一下,android:focusable=""false&

dev gridview 字体显示问题,请教大神

问题描述 dev gridview 字体显示问题,请教大神 dev 14.3,gridcontrol添加数据后(数据有手动绑定的,有数据库动态添加的),字体有的显示是黑色的,有的显示为灰白色的不清晰,当选中灰白色的row时,字体又变为黑色了,请问这是怎么回事啊?怎样使字体显示为同一种颜色? 解决方案 问题解决了,不是字体设置的问题,而是添加了一个"styleFormatCondition1.Condition = DevExpress.XtraGrid.FormatConditionEnum.E

Dev GridView 绑定List&amp;lt;T&amp;gt;、BindingList &amp;lt;T&amp;gt;、BindingSource

今天听到同事处理数据结构的时候特意处理为了 BindingList<T>,据说可以直接绑定到Dev GridView上,于是测试了一下: 1.在Dev GridView中新增三列,三列的FieldName分别对应与FormItem类对应:ItemKey.Name.Enable 具体类代码如下: public class FormItem { /// <summary> /// 标识 /// </summary> public string ItemKey { get;