Visual studio Visual 2017表单设计器“找不到类错误”失败-但是,该类存在

Visual studio Visual 2017表单设计器“找不到类错误”失败-但是,该类存在,visual-studio,winforms,Visual Studio,Winforms,我正在为我创建的从.dll运行的win窗体添加更多控件 项目加载良好,在我在表单可视化设计器中对表单进行了一些更改后,编译并尝试打开表单。。。我正对着这个错误屏幕 它正在抱怨,因为它找不到NoButtonsTabControl类 NoTabControl.cs类: namespace TFG_Tools { // Extend TabControl Class to provide a multi layer canvas with hidden tabs or buttons public

我正在为我创建的从.dll运行的win窗体添加更多控件

项目加载良好,在我在表单可视化设计器中对表单进行了一些更改后,编译并尝试打开表单。。。我正对着这个错误屏幕

它正在抱怨,因为它找不到NoButtonsTabControl类

NoTabControl.cs类:

namespace TFG_Tools {

// Extend TabControl Class to provide a multi layer canvas with hidden tabs or buttons
public class NoButtonsTabControl : TabControl {
    public NoButtonsTabControl() {
        Appearance = TabAppearance.FlatButtons;
        ItemSize = new Size(0, 1);
        //SizeMode = TabSizeMode.Fixed;
    }

    protected override void WndProc(ref Message m) {
        // Hide tabs by trapping the TCM_ADJUSTRECT message
        if (m.Msg == 0x1328) m.Result = (IntPtr)1;
        else base.WndProc(ref m);
    }

    }// end NoButtonsTabControl class

}
主窗体类的开头如下所示

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Text.RegularExpressions;
using ENSED;
using System.Globalization;
using Win32;
using WindowsEnv;

namespace TFG_Tools {


public partial class TradePanelForm : Form {
    //loaded as master
    private bool isMaster = false;
    public void SetAsMaster() { isMaster = true; }

    ...
为什么这件事现在突然发生,如此令人沮丧。我只是c和visual studio的中级。我只在这个项目中使用它来创建winform

我如何告诉设计器该类在何处,从而停止出现此错误

有趣的是,在这种安排下,它以前工作得很好!如果我编译代码,它就会工作,所有的表单元素都在那里

正是设计师在垂死

另外,我还将这个项目从2015年的虚拟演播室转移过来


谢谢。

我的解决方案很奇怪

关闭项目中所有打开的窗口 选择任意cpu配置文件 进入构建->清洁解决方案 然后构建->重建解决方案 重新打开表单设计器 这对我来说很有效,希望每次它出现的时候都能清理掉这个烂摊子

我有两个配置文件,一个32位和64位配置文件,因此我可以将dll编译为两个

当我切换到这些概要文件来构建项目时,设计器中一定会出现一些问题


希望这能为其他人节省时间。

在将自定义控件类从项目的根目录移动到一个新文件夹时,我看到过几次这一点,这里显示的是“给予或接受”。通常,清洗溶液/重建溶液可以解决问题。在子文件夹中直接创建类时,有时会更改类的命名空间。或者是这样。IIRC,最新版本的VS不再这么做了。有时它是一个附属组件,当你移动东西时,它是一个不同步的依赖项。清理/重建通常也能解决这个问题。谢谢你的帮助。我进行了清理/重建,但不幸的是错误仍然显示出来。问题是,我没有重命名和类或名称空间。当我在子文件夹中打开该类的项目时,它正在工作。请验证所有项目/依赖项是否具有相同的位,以及是否在project/Properties/Build中使用相同的目标平台。检查解决方案属性中的依赖项。还不好吗?尝试从窗体中删除控件,保存,然后使用相同的名称重新添加。如果仍然不行,请尝试关闭VS,删除受影响项目中obj目录中的所有内容,重新启动并重建。您应该对TradePanel.cs进行故障排除。你能给我看一下设计器的源代码吗?它很大,面板上有很多控件,你还想让我给你看吗?