首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到类型'Track_Attack.TAGeneric‘上的构造函数。C# Winforms

找不到类型'Track_Attack.TAGeneric‘上的构造函数。C# Winforms
EN

Stack Overflow用户
提问于 2012-09-18 21:03:06
回答 2查看 1.4K关注 0票数 4

我在Visual Studio 2010中收到一条警告消息(标题中的那个)

基本上,我已经做了一个通用的形式,它有一堆变量,虚函数。

它接受我创建的一个类作为参数,并将其分配给一个局部变量(然后使用getter和setter将其作为一个属性)

然后我做了另一个表单,它继承了这个表单。一切都很好,它可以运行,但当我尝试查看它的设计器时,我得到了错误消息。

代码语言:javascript
复制
    public TAGeneric(TAManager iManager)
    {
        ControlHelper.SuspendDrawing(this);

        mManager = iManager;

        SetStyle(ControlStyles.OptimizedDoubleBuffer |
            ControlStyles.UserPaint |
            ControlStyles.AllPaintingInWmPaint, true);

        InitializeComponent();
        SetupCommandBar();
        ControlHelper.ResumeDrawing(this);
    }

那是他的父母。

代码语言:javascript
复制
    public TAAddInterval(TAManager iManager) : base(iManager)
    {
        InitializeComponent();
    }

这是个孩子。忘记我在使用"manager“这个词的事实,因为它是不受欢迎的。有没有人对这个问题有所了解?从字面上看,运行起来很好,但当尝试在designer中编辑图形部分时,它不会加载它。

谢谢你的帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-09-18 21:04:56

我怀疑你需要为设计器提供一个无参数的构造函数来使用:

代码语言:javascript
复制
public TAAddInterval(TAManager iManager) : base(iManager)
{
    InitializeComponent();
}

[Obsolete("This constructor only exists for the benefit of the designer...")]
public TAAddInterval() : this(null)
{
}

如果你有一些你可以提供的伪TAManager,如果设计者碰巧遇到了一些使用管理器的代码,这可能会避免抛出NullReferenceException

票数 8
EN

Stack Overflow用户

发布于 2012-09-18 21:05:42

你可能只需要一个无参数的构造函数,设计器就可以很好地工作了。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12477615

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档