6

为了使我的程序在具体案例中更加优雅和更好地组织,我想在我的班级DataGridView1variable顶部使用引用变量进行更改Form1

Private aDgv As DataGridView

并赋值Form1_Load

aDgv = DataGridView1

之后,我可以在其中使用aDgv变量Form
除非在这种情况下:

Private Sub aDgv_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles aDgv.KeyDown
aDgv.SelectionMode = DataGridViewSelectionMode.FullRowSelect
'etc...
End Sub

我收到错误的地方:

Handles 子句需要WithEvents在包含类型或其基类型之一中定义的变量。子句后的变量带有蓝色下划线aDgvHandles

怎样做才能摆脱错误并开始Handles aDgv.SomeEvent工作?
当然,使用引用aDgv而不是原始控件名称DataGridView1

4

2 回答 2

10

最小的答案是添加WithEventsaDgv

Private WithEvents aDgv As DataGridView
于 2012-12-21T17:09:27.523 回答
1

马克赫德的回答也对我有用。但是对于像我这样的初学者来说,这里有一个详细的方法。

  • 突出显示代码中带有蓝色下划线的变量
  • F12
  • 它会带你到designer.vb
  • 然后您将立即看到之前突出显示的变量
  • 现在只需在WithEvents单词后面加上Friend单词
  • 完毕
于 2016-03-27T16:02:15.677 回答