在使用infragistics.win.ultrawingrid.ultragrid时,有时我们想在网格上进行双击操作。比如双击某一行来显示对应的明细数据。但是对于双击事件来说并没有提供对应的行信息。那么我们如何来判断用户双击某一行呢。这里我还是以代码来说明,相信大家都能明白
private void ultragrid1_doubleclick(object sender, system.eventargs e)
{
//双击测试,察看当前双击地方是不是一行,如果是则弹出窗体
//获取当前双击点的位置
point p=system.windows.forms.cursor.position;
//获取当前双击点在网格中所处的位置
p=this.ultragrid1.pointtoclient(p);
//获取双击点网格控件的元素
infragistics.win.uielement oui=this.ultragrid1.displaylayout.uielement.elementfrompoint(p);
if(oui!=null)
{
//判断双击点是不是行,也可能是列,如果网格控件选取方式不是设的选中整行的话。
infragistics.win.ultrawingrid.ultragridrow orowui = oui.selectableitem as infragistics.win.ultrawingrid.ultragridrow;
if(orowui !=null)
{
//如果选中的是行,则我们可以通行行的单元格来获取对应的信息
string s=orowui .cells[0].value.tostring();
}
}
}
新闻热点
疑难解答