我是VB和.NET的新手,我试图在用户双击数据网格时显示一个消息框,以显示所选数据。
通常我可以通过按钮点击事件从Windows控件中使用MessageBox("Hello")
。
但是当我从datagridview的双击事件中键入MessageBox(“Hello”)时,我收到编译错误
'MessageBox'是类类型,不能用作表达式。
我还尝试在visual studio上创建第二个空白表单,在我输入的按钮点击事件:Form2.Show()
,我在datagridview双击事件上做了同样的事情。
当我单击按钮时,会显示Form2,但是当我双击datagridview时,不会显示Form2。
datagridview控件的行为与其他Windows控件的行为有什么不同?当用户双击datagridview时,显示弹出窗口或显示第二种形式的最佳和简单方法是什么?
我想要做的是当用户双击datagridview时,我想创建一个弹出窗体,并在弹出窗体上的选定datagridview行中填入一些数据。
我不知道如何回复Alex的建议,我尝试添加评论,但它说超过125个字符,我找不到回复帖子的按钮,所以我只是把它放在这里。 (让我知道是否有更好的方法来做到这一点,而不是继续添加我的问题)。
嗨,Alex,
这是我在form1类上的代码,form2类只是一个简单的空白表单,我只是创建添加新表单右键单击从Visual Studio添加表单。 单击按钮后,弹出窗口2然后关闭它Form2,然后双击datagridview单元格,没有任何反应,我单击按钮form2弹出。
谢谢。
Public Class Form1 Private Sub Form1_Load(sender as Object,e As EventArgs)处理MyBase.Load 'TODO:这行代码将数据加载到'TestDB1DataSet.t_emp'表中。您可以根据需要移动或删除它。 Me.T_empTableAdapter.Fill(Me.TestDB1DataSet.t_emp)
End Sub
Private Sub DataGridView1_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick
' put some code here
Form2.Show()
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Form2.Show()
End Sub
结束班
答案 0 :(得分:1)
这些很容易出错:
MessageBox("Hello")
应为MessageBox.Show("Hello")
- 就这么简单。 MessageBox
是一种类型; Show
是您调用的方法。
我认为,datagridview上的双击事件不起作用的原因是你需要检查他们是否点击了单元格以及检查他们是否双击在它的灰色区域(这是双击方法的作用!)所以在这里使用此代码 - 确保在部分Handles
之后将{Datagridview1'替换为DataGridView
的任何名称Private Sub DataGridView1_MouseDoubleClick(sender As Object, e As MouseEventArgs) Handles DataGridView1.MouseDoubleClick
DoubleClickDataGrid()
End Sub
Private Sub TYPEANYNAMEHERE(sender As Object, e As DataGridViewCellMouseEventArgs) Handles DataGridView1.CellMouseDoubleClick
DoubleClickDataGrid()
End Sub
Sub DoubleClickDataGrid()
' Type the code here
End Sub
1}}是:
Form2.Show
无论您想要在双击时想要执行什么代码,都会显示“在此处键入代码”
(例如:MessageBox.Show("Hello"))
或.label {
border-radius: 1.25em !important;
}
.label-warning {
padding: 0.1em 0.8em !important;
color: black !important;
}
等