回答編集履歴

1

追記

2023/06/29 06:11

投稿

YAmaGNZ
YAmaGNZ

スコア10542

test CHANGED
@@ -9,3 +9,43 @@
9
9
  End Sub
10
10
  ```
11
11
  このようなコンストラクタは必要ありません。
12
+
13
+ ---
14
+ ### 追記
15
+
16
+ 何故このようなことになったかというと、カスタムコントロールを追加すると
17
+ CustomControl1.Designer.vbといった感じの隠しファイルが自動生成されて、
18
+ ```VBNET
19
+ <Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
20
+ Partial Class CustomControl1
21
+ Inherits System.Windows.Forms.Control
22
+
23
+ 'Control は、コンポーネント一覧に後処理を実行するために、dispose をオーバーライドします。
24
+ <System.Diagnostics.DebuggerNonUserCode()> _
25
+ Protected Overrides Sub Dispose(ByVal disposing As Boolean)
26
+ Try
27
+ If disposing AndAlso components IsNot Nothing Then
28
+ components.Dispose()
29
+ End If
30
+ Finally
31
+ MyBase.Dispose(disposing)
32
+ End Try
33
+ End Sub
34
+
35
+ 'コントロール デザイナーで必要です。
36
+ Private components As System.ComponentModel.IContainer
37
+
38
+ ' メモ: 以下のプロシージャはコンポーネント デザイナーで必要です。
39
+ ' コンポーネント デザイナーを使って変更できます。
40
+ ' コード エディターを使って変更しないでください。
41
+ <System.Diagnostics.DebuggerStepThrough()> _
42
+ Private Sub InitializeComponent()
43
+ components = New System.ComponentModel.Container()
44
+ End Sub
45
+
46
+ End Class
47
+
48
+ ```
49
+ という感じでコードが自動生成されます。
50
+ そこに`Inherits System.Windows.Forms.Control`とControlを継承するように記載されているので、自分で書いた`Inherits DataGridView`と型が異なるというエラーが発生することになります。
51
+