0
我有一个自定义的VB.NET控件,我创建的程序在一个程序中正常工作,但不在另一个程序中。该控件有一个按钮和一个窗体。表单根据控件中的设置显示一些数据。从VB.NET自定义控件中传递的属性
这是两个测试项目中使用:
With Me.MyControl1
'.Connection = gConn
.Server = "servername"
.DBName = "dbname"
.TableName = "table"
.FieldString = "list of fields"
.ReturnColumn = 0
.AllowMultiSelect = True
End With
这是我如何通过设置到我的形式。
...这种形式是控制的一部分
Public Sub New(ByVal cmsl As MyCustomControl)
' This call is required by the Windows Form Designer.
InitializeComponent()
' Add any initialization after the InitializeComponent() call.
Me.Connection = cmsl.Connection
Me.ConnectionString = cmsl.ConnectionString
Me.Server = cmsl.Server
Me.DBname = cmsl.DBName
Me.TableName = cmsl.TableName
Me.FieldString = cmsl.FieldString
Me.FilterString = cmsl.FilterString
Me.AllowMultiSelect = cmsl.AllowMultiSelect
Me.AutoPopulate = cmsl.AutoPopulate
Me.ReturnColumn = cmsl.ReturnColumn
Me.SelectTop = cmsl.SelectTop
End Sub
在TestProject1 - 控制工作正常
在TestProject2 - 控制不发送任何我设置的形式设置
当我使用UserControl TestContainer进行调试时,我的控件工作正常。
我在VS2005上使用VB.NET。
这一切都在同一台机器上完成。为什么这个工作在一个项目而不是另一个?
它是一个自定义控件。我会试试看看我能找到什么。 – Eric 2012-03-06 20:33:37
这是愚蠢和简单的事情。当我在设计器上拖动控件时,控件被重新命名(我必须在另一个控件上拖动它时)。当我审查时,我一定忽略了这一点。感谢您的回复squelos。 – Eric 2012-03-06 20:49:13
是的,我以为是这样的。看起来太奇怪了,不能成为别的东西。我碰巧遇到了与使用大量用户控件的应用程序相同类型的问题。 Winforms设计器不喜欢用户控件中的错误,有时会删除/重命名我的用户控件。有时候只是部分的,所以我无法在任何地方直观地找到它们,而在.designer中,只有一半的声明/属性存在......产生非常奇怪的东西:D – squelos 2012-03-06 20:53:02