如何删除窗体中误添加的TableAdapter?删除后窗体崩溃求解
正确删除误添加的TableAdapter方法
我误向窗体添加了一个不需要的ClientsTableAdapter1,注释掉代码里的相关引用后,窗体运行时崩溃。相关代码和Resx文件内容如下:
窗体代码片段
Sub InitializeComponent() 'Me.ClientsTableAdapter1 = New Proforma.ProformaDataSetTableAdapters.ClientsTableAdapter() Me.CreditorsTableAdapter1 = New Proforma.ProformaDataSetTableAdapters.CreditorsTableAdapter() *'ClientsTableAdapter1 *Me.ClientsTableAdapter1.ClearBeforeFill = True CreditorsTableAdapter1 Me.CreditorsTableAdapter1.ClearBeforeFill = True 'Friend WithEvents ClientsTableAdapter1 As ProformaDataSetTableAdapters.ClientsTableAdapter Friend WithEvents CreditorsTableAdapter1 As ProformaDataSetTableAdapters.CreditorsTableAdapter
Creditors.Resx文件片段
<metadata name="ClientsTableAdapter1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>213, 17</value> </metadata> <metadata name="CreditorsTableAdapter1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>378, 17</value>
正确删除方法
方法一:手动清理所有引用
清理代码文件:
- 打开窗体对应的代码文件,找到
InitializeComponent()方法,彻底删除所有和ClientsTableAdapter1相关的代码行(包括你注释掉的内容):- 删除
'Me.ClientsTableAdapter1 = New Proforma.ProformaDataSetTableAdapters.ClientsTableAdapter() - 删除
Me.ClientsTableAdapter1.ClearBeforeFill = True - 删除
'Friend WithEvents ClientsTableAdapter1 As ProformaDataSetTableAdapters.ClientsTableAdapter
- 删除
- 检查窗体类的其他方法,确保没有任何调用
ClientsTableAdapter1的代码,有则一并删除。
- 打开窗体对应的代码文件,找到
清理Resx资源文件:
打开Creditors.Resx,找到并删除整个ClientsTableAdapter1.TrayLocation的元数据节点,也就是这段代码:<metadata name="ClientsTableAdapter1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>213, 17</value> </metadata>
方法二:通过窗体设计器删除(更省心)
直接用Visual Studio的设计器操作,它会自动帮你处理所有引用:
- 打开窗体设计器,在窗体下方的组件面板里找到
ClientsTableAdapter1 - 选中组件后按
Delete键删除 - 设计器会自动清理代码文件和Resx文件里的所有相关内容,避免手动删除遗漏导致崩溃
内容的提问来源于stack exchange,提问作者MGC
相关产品推荐
相关产品推荐

