找回密码
 立即注册

QQ登录

只需一步,快速开始

DCAgile

中级会员

83

主题

247

帖子

794

积分

中级会员

积分
794

活字格认证微信认证勋章元老葡萄

DCAgile
中级会员   /  发表于:2015-8-26 11:27  /   查看:4773  /  回复:2
1.C1FlexGrid如何判断当前用户点击的是列头(即标题)

2 个回复

倒序浏览
gw0506
超级版主   /  发表于:2015-8-26 12:35:00
沙发
回复 1楼DCAgile的帖子

在MouseClick事件中,通过HitTest方法取行列值。如果为row=0就是列头。
  1.         void c1FlexGrid1_MouseClick(object sender, MouseEventArgs e)
  2.         {
  3.             int row = c1FlexGrid1.HitTest().Row;
  4.             int col = c1FlexGrid1.HitTest().Column;

  5.             MessageBox.Show(string.Format("row: {0}, col: {1}",
  6.                 row, col));
  7.         }
复制代码
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-8-31 17:07:00
板凳
回复 1楼DCAgile的帖子

感谢电话联系我们。
通过电话,你反映的问题请参考如下:
使用HitTest方法的返回值是HitTestInfo。里面暴露了接口提供Row,Column和Type。
其中Row/Column代表的是行和列的值,Type是判断点击的是什么区域,它包含ColumnHeader,Cell,RowHeader等区域。
代码参考:
  1. private void c1FlexGrid1_MouseClick(object sender, MouseEventArgs e)
  2.         {
  3.           C1.Win.C1FlexGrid.HitTestInfo info=  this.c1FlexGrid1.HitTest(e.X, e.Y);
  4.           if (info.Type == C1.Win.C1FlexGrid.HitTestTypeEnum.ColumnHeader)
  5.           {
  6.               Console.WriteLine("你点击的是ColumnHeader区域");
  7.           }

  8.         }
复制代码
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部