1. 程式人生 > >DevExpress XtraGrid 行雙擊事件的處理

DevExpress XtraGrid 行雙擊事件的處理

要響應GridView的單擊或者雙擊事件,要設定GridView的OptionsBehavior.Editable=false。如果為true,它是不會響應這這兩個事件的。 它本的的機制就是這樣,祥細說明請看: The   DoubleClick   event   occurs   when   the   end   user   double-clicks   within   a   view.   The   DoubleClick   event   does   not   occur   if   an   in-place   editor   is   activated   as   a   result   of   double-clicking   as   well   as   when   double-clicking   within   the   GridControl.EmbeddedNavigator.

       //雙擊行彈出nodeDetail資訊         private void gridView1_MouseDown(object sender, MouseEventArgs e) 
{
DevExpress.XtraGrid.Views.Grid.ViewInfo.GridHitInfo hInfo = gridView1.CalcHitInfo(new Point(e.X,e.Y));
if (e.Button == MouseButtons.Left && e.Clicks == 2)
{
//
判斷游標是否在行範圍內 if (hInfo.InRow)
{
//取得選定行資訊 string nodeName = gridView1.GetRowCellValue(gridView1.FocusedRowHandle, "nodeName").ToString();
//string nodeName = gridView1.GetRowCellValue(gridView1.GetSelectedRows()[0], "nodeName").ToString(); string
sql = "select nodeDetail from treelist where nodeName = '" + nodeName + "'";
SqlCommand comm = new SqlCommand(sql, conn);
try
{
conn.Open();
MessageBox.Show(comm.ExecuteScalar().ToString(), "Detail");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Error");
}
finally
{
conn.Close();
}
}
}
}