【问题标题】:Devexpress winforms gridcontrol - Get id from selected row on both right and left click eventDevexpress winforms gridcontrol - 从右键和左键单击事件的选定行中获取ID
【发布时间】:2017-07-26 15:56:24
【问题描述】:
我正在尝试在我的软件专业课程中学习 Devexpress winforms gridcontrol。我还没有设法从右键和左键单击事件中的选定行中获取 id。我想要一个触发左右单击的事件,同时我想获取选定的行 ID(或第一个单元格值。)。
如果我设法获得行 id,我不想将 id 显示到行中。但如果没有,我会在第一个单元格中显示 id 并尝试获取第一个单元格值。
【问题讨论】:
标签:
winforms
devexpress
gridcontrol
【解决方案1】:
只是为了添加到 Triple K 的解决方案中,以下是如何检测单击了哪个鼠标按钮,例如通过将“e”转换为 DXMouseEventArgs 来检测网格的 Click 事件:
private void gridView1_Click(object sender, EventArgs e)
{
if (((DXMouseEventArgs)e).Button == System.Windows.Forms.MouseButtons.Right)
{
string ID = gridView1.GetFocusedRowCellValue("ID").ToString();
MessageBox.Show("ID: " + ID);
}
}
【解决方案2】:
您可以使用gridView_FocusedRowChangedevent 来获取它,因为Left or Right click 会触发该事件。
这是从 FocusedRow 获取 ID 的示例代码
private void gridView_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
{
string ID = gridView.GetFocusedRowCellValue("ID").ToString();
}
希望这是你想要的。