日期:2014-05-17  浏览次数:21596 次

DevExpress.XtraGrid.GridControl 单击某一行获取数据问题
 private void gridView1_Click(object sender, EventArgs e)
        {
            string colValue= this.gridView1.GetRowCellValue(this.gridView1.FocusedRowHandle, this.gridView1.Columns[1]).ToString() ;
            MessageBox.Show(colValue);
        }
为什么我单击某一行的时候不触发这个事件,只有单击标头的时候才会触发这个事件,想问下在什么事件下单击某行时就可以获取到某行指定的值。请会的帮忙解答下,谢谢
dev? c3

------解决方案--------------------
有CellClick事件吧
------解决方案--------------------
使用GridControl的Click事件,或者使用GridView的FocusedRowChanged事件
------解决方案--------------------
GridView的Click应该也是可以触发的,你看看是不是其他地方的问题。加个断点看是否能进去。
------解决方案--------------------
每个gridView都属于一个gridControl, 用gridControl的gridControl1_MouseClick事件.
private void gridControl1_MouseClick(object sender, MouseEventArgs e)
 {
      GridHitInfo hi = gridView1.CalcHitInfo(new Point(e.X, e.Y));
       //单击的是列头
        if (hi.InColumn)
       {}
单击数据行
if (hi.InRow){
//对应操作
}

}
------解决方案--------------------
MyGridView.MouseDown += new MouseEventHandler(MyGridView_MouseDown);看看这个行不行