【问题标题】:Get value of data grid view first cell with context menu使用上下文菜单获取数据网格视图第一个单元格的值
【发布时间】:2017-07-28 06:32:36
【问题描述】:

我有一个填充了值的数据网格视图。我想要做的是右键单击数据网格视图中的项目,弹出一个上下文菜单,在那里我应该选择一个菜单项来获取所选行的第一个单元格。
我设法制作了上下文菜单及其项目,所以我很好。我需要做的是在选择所述项目时以某种方式获取第一行的值。 我尝试使用单元格单击方法来获取它并且它可以工作,但我不知道如何实现它来单击菜单项。

string value = ((DataGridView)sender).Rows[e.RowIndex].Cells[0].Value.ToString();

【问题讨论】:

  • 能否请您将代码发布到与项目一起弹出的上下文菜单中,以便您的问题易于重现。除了解决方法之外应该有另一种方法:)
  • 没有什么要发布的,我没有在我的上下文菜单中编码,我使用了工具箱中的上下文菜单条项目,然后将其添加到数据网格视图事件中。就是这样。除非我没有完全理解你的问题?
  • 是的,这就是我的意思。感谢您提供的信息。

标签: c# datagridview contextmenu


【解决方案1】:

好的,所以我设法解决了这个问题并像这样解决它: 我通过鼠标按下方法获得了所需的值并将其存储在全局变量中,如下所示:

private void dataGridView1_MouseDown(object sender, MouseEventArgs e)
    {
        DataGridView.HitTestInfo hit = dataGridView1.HitTest(e.X, e.Y);
        if(hit.RowIndex >= 0)
        {
            finalValue = ((DataGridView)sender).Rows[hit.RowIndex].Cells[0].Value.ToString();
        }
    }

单击菜单项后,我可以根据需要管理变量。这不是我描述的问题的确切解决方案,但是嘿,只要它工作正常?希望它会帮助某人。

【讨论】:

  • 顺便提一下,finalValue是我在程序开始时声明的全局字符串
猜你喜欢
  • 2013-05-25
  • 1970-01-01
  • 2011-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多