winform c1Flexgrid如何获得选中行的单元格全部值

本文介绍了在C# Winform应用中,如何使用c1Flexgrid控件获取用户点击的单元格值。由于c1Flexgrid没有直接的CellClick事件,因此需要通过click事件结合HitTestInfo对象来获取坐标信息,并判断是否为数据单元格。通过c1FlexGrid1.Rows[][]数组定位到选中单元格,从而获取其值。作者还提到可能需要检查新版本控件是否提供了更方便的事件。
摘要由CSDN通过智能技术生成

首先,c1Flexgrid这个控件不像vs里自带的DataGridView那样有CellClick事件可以直接获取用户点击的单元格信息。

注意:在c1Flexgrid里只能通过 click事件 处理 所以只能通过 HitTestInfo对象 把鼠标点下的坐标信息 变成我们需要的单元格信息(这个方法的到的左边可以避免 在点击空白以外的地方还是获取在这这之前获得焦点的单元格坐标信息)。

 

1 首先在click事件里 吧此事件的数据基类转换为 我们需要的 MouseEventArgs类型。

2 把MouseEventArgs.Location得到的坐标信息作为参数提供 给c1Flexgrid 控件的HitTest()方法 ,这样就可以得到一个HitTestInfo对象。

3 根据需要 判断 HitTestInfo对象的坐标点 不是行头,列头并且不是 数据单元格以为的地方。(也可以加上mouseEvent.Button == MouseButtons.Left 判断是不是鼠标左键的点击)

4 根据得到的横坐标 或者纵坐标 使用c1FlexGrid1.Rows[][] 二维数组进行定位单元格,想得到什么还不是轻而易举。

下面是项目中实例代码

 1 // 通过HitTestInfo 根据坐标 取得所在行序号的相关值
 2         private void c1FlexGrid1_Click(object sender, EventArgs e)
 3         {
 4             MouseEventArgs mouseEvent = e as MouseEventArgs;
 5             if (mouseEvent.Button == MouseButtons.Left)
 6             {
 7                 if (c1FlexGrid1.Rows != 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值