在 winform 中的 datagrid 中实现单元格双击事件

来源:互联网 发布:陈鸿一鸣 知乎 编辑:程序博客网 时间:2024/05/01 14:19

在 winform 中的 datagrid 中实现单元格双击事件

Public Class Member1    Inherits System.Windows.Forms.Form    'Windows 窗体设计器生成的代码    '省略..    Dim mydb As New Db    Dim dgListMouseDownTime As Date    Private Sub Member1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load        mydb.daMember.Fill(Me.DsMember1)        Dim dgStyle As New DataGridTableStyle        dgStyle.MappingName = Me.DsMember1.Tables(0).TableName        Me.dgList.TableStyles.Add(dgStyle)        '在第一列上实现双击事件        Dim memberID As DataGridTextBoxColumn = Me.dgList.TableStyles(0).GridColumnStyles(0)        AddHandler memberID.TextBox.MouseDown, AddressOf memberID_MouseDown    End Sub    '如果鼠标定位到单元格,则设置定位到单元格上的时间    Private Sub dgList_MouseDown(ByVal sender As ObjectByVal e As System.Windows.Forms.MouseEventArgs) Handles dgList.MouseDown        Dim hit As DataGrid.HitTestInfo = Me.dgList.HitTest(e.X, e.Y)        If hit.Type = DataGrid.HitTestType.Cell Then            Me.dgListMouseDownTime = Now        End If    End Sub    Private Sub memberID_MouseDown(ByVal sender As ObjectByVal e As System.Windows.Forms.MouseEventArgs)        If (e.Button = MouseButtons.Left And e.Clicks = 2Or (Now < Me.dgListMouseDownTime.AddMilliseconds(SystemInformation.DoubleClickTime)) Then            MessageBox.Show("双击了单元格!")        End If    End SubEnd Class
原创粉丝点击