因此,实际上,我有一个名为ExcelDisplay的自定义用户控件。我试图在visual studio中将它从工具箱拖到同一项目中的webform中,但我得到了一个缺少方法的异常。有一次,构造函数是参数化的,但我在认为这是一个糟糕的设计想法后改变了它。
它看起来像是在说构造函数丢失了,但它显然在那里。
除了visual studio放置在那里的自动生成代码外,我的winform中容纳控件的部分是空的。
ExcelDisplay构造函数的代码如下所示。
namespace STS_Console.UserControls
{
public partial class ExcelDisplay : UserControl
{
public ExcelDisplay()
{
InitializeComponent();
DataDisplay.Columns[0].HeaderText = "Data";
//debug
string x = DataDisplay.Columns[0].GetType().ToString();
x.ToString();
}
错误消息如下。
因此,当我像这样在设计器中拖放时会发生错误
不管怎样,这是我的问题。我不知道是什么原因造成的,也不知道如何解决。我很乐意根据要求发布额外的代码。
3条答案
按热度按时间sxpgvts31#
应该将用户控件放在它们自己的类库中。要使设计器工作,它需要用户控件的 * 编译 * 版本。如果您不能在编译窗体之前编译用户控件,您将陷入各种麻烦。
mzaanser2#
重建解决方案为我修复了它,虽然如果你对你的用户控件进行定期更改,你应该把它们放到一个单独的项目中。
我的特殊问题是一个用户控件,在一个用户控件中。
sdnqo3pr3#
也许删除命名空间中的.usercontrol会起作用