如何使用wpf在DevExpress网格控件列中的图像上获取单击事件?

如何使用wpf在DevExpress网格控件列中的图像上获取单击事件?,devexpress,wpf-4.0,navigationbar,gridcontrol,Devexpress,Wpf 4.0,Navigationbar,Gridcontrol,我有导航栏控件,一个NavBar组包含网格控件。我想在网格控件的一列中获取特定图像的单击事件,在图像单击事件中,我必须显示一些菜单选项的弹出窗口 我正在使用网格控件的预览鼠标左键向上事件来获得单击,但它不起作用,因为网格控件位于Navbar控件中 基本上,我的问题是我无法获得网格控件列上的单击图像,网格列本身位于Navbar组Navbar控件中 这是我的演示项目 任何帮助都将不胜感激。我看过您的演示项目,我认为以下代码将解决您的问题:- 私有void gridControl1_PreviewMo

我有导航栏控件,一个
NavBar
组包含网格控件。我想在网格控件的一列中获取特定图像的单击事件,在图像单击事件中,我必须显示一些菜单选项的弹出窗口

我正在使用网格控件的预览鼠标左键向上事件来获得单击,但它不起作用,因为网格控件位于
Navbar
控件中

基本上,我的问题是我无法获得网格控件列上的单击图像,网格列本身位于
Navbar
Navbar
控件中

这是我的演示项目


任何帮助都将不胜感激。

我看过您的演示项目,我认为以下代码将解决您的问题:-

私有void gridControl1_PreviewMouseDown(对象发送器,鼠标按钮Ventargs e) {

TableViewHitInfo hit=tableView1.CalcHitInfo(例如,作为DependencyObject的OriginalSource)

if (hit.InRowCell) {

 gridControl1.View.FocusedRowHandle = hit.RowHandle;

   if (e.ClickCount == 1)

    {  
      if (e.XButton1 == MouseButtonState.Released)
        {

           if (hit.Column.FieldName == "number")
               {
                      var row = gridControl1.GetFocusedRow();
                      data d = (data)row;
                      MessageBox.Show(d.number.ToString());
                      x = d.number;
                    }
                    if (e.RightButton == MouseButtonState.Pressed)
                    {
                        if (hit.Column.FieldName == "image")
                        {
                            gridControl1.View.FocusedRowHandle = hit.RowHandle;
                            var row = gridControl1.GetFocusedRow();
                            data d = (data)row;
                            x = d.number;

                            popup.StaysOpen = true;
                            popup.IsEnabled = true;
                            popup.IsOpen = true;

                        }
                    }
                }
            }

        }
    }