• 全部
  • VBS
  • .NET技术
  • VBA
  • VB网络编程
  • VB多媒体
  • VB数据库
  • VB控件
  • VB COM/DCOM
  • VB基础类
  • VB API
  • 问答

急!!!!大家看这个问题怎么解决?

bybandzk 2005-02-22 03:30:09
我在winform里面放置了一个datagrid,我想双击datagrid弹出另一个窗体怎么做?
正常情况下用datagrid_doubleclick,但是这个不行因为双击的时候是单元格不产生这个事件,请问这个问题怎么解决?
...全文
59 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
T2 2005-02-22
建议你看看Herry的.Net之旅,你会受益良多
回复
liulxmooo 2005-02-22
up
回复
yizhixiaozhu 2005-02-22
up

都说了
回复
haoztao 2005-02-22
http://dotnet.aspx.cc/ShowDetail.aspx?id=FF4194C5-D14B-4828-57CE-468ED6FB421B
给你一个参考网址,,关于怎么再datagrid中用双击事件
回复
hamadou 2005-02-22
1) 设置一个公用变量gridMouseDownTime,用于记录点击时的绝对时间;

(2) 在DataGrid1_MouseDown事件处理程序中记录下第一次点击的时间:

If hit.type= System.Windows.Forms.DataGrid.HitTestType.Cell then

gridMouseDownTime = DateTime.Now

End If

(3) 在Datagrid的cell内嵌的textbox中设置鼠标点击事件(mousedown);

设置方法请看我专栏中的datagrid结构剖析文章,事件处理程序的设置方法请看我专栏中的windows窗体引介(二)中的事件响应部分,在此不重复解释了:

Dim ts As New DataGridTableStyle()

Dim aColumnTextColumn As DataGridTextBoxColumn

DataGrid1.DataSource = dt

Me.HenryDatagrid1.DataSource = dt

ts.MappingName = dt.TableName

Dim numCols As Integer

numCols = dt.Columns.Count

Do While (i < numCols) '重绘所有的列

aColumnTextColumn = New DataGridTextBoxColumn()

'夺过对textbox内落下光标的控制权,但你仍可以输入值

AddHandler aColumnTextColumn.TextBox.MouseDown, New MouseEventHandler _

(AddressOf TextBoxMouseDownHandler)

aColumnTextColumn.HeaderText = dt.Columns(i).ColumnName

aColumnTextColumn.MappingName = dt.Columns(i).ColumnName

ts.GridColumnStyles.Add(aColumnTextColumn) '增加一种自定义的column风格

i = (i + 1)

Loop

DataGrid1.TableStyles.Add(ts)

(4) 在上述事件的事件处理程序中比较时间间隔,从而判断是否是datagrid中对某一个cell进行了双击:

Private Sub TextBoxMouseDownHandler(ByVal sender As Object, ByVal e As MouseEventArgs)

If (DateTime.Now < gridMouseDownTime.AddMilliseconds(SystemInformation.DoubleClickTime)) Then ‘判断时间间隔

MsgBox("DataGrid 的 DoubleClick ")
‘做相应的处理,例如你的打开一个新的窗体。
End If

End If

End Sub

回复
nga96 2005-02-22
就是这样做呀,但是这个不行因为双击的时候是单元格不产生这个事件是什么意思?
要取单元格的值么?直接取就是
回复
发帖
VB
创建于2007-09-28

1.6w+

社区成员

VB技术相关讨论,主要为经典vb,即VB6.0
申请成为版主
帖子事件
创建了帖子
2005-02-22 03:30
社区公告
暂无公告