c# - 防止 Visual Studio 作为设计器加载自定义分部类

标签 c# .net winforms visual-studio windows-forms-designer

在 Visual Studio 中,有很多设计器编辑器、Windows Forms、XAML、Installer 等。

有时,我会创建一个新的源代码作为部分类(自定义)来分离逻辑。

例如:

  • 仅部分代码:类 Form1:Windows.Forms.Form → Form1.cs
  • 仅限部分设计器:部分类 Form1 : Form → Form1.Designer.cs
  • 部分类(自定义):部分类 form1:Form → Form.Print.cs

在最后,我只包括打印方法和属性,然后,当我在解决方案资源管理器中双击这个文件时,总是打开设计器,而不是代码编辑器,当然,我尝试使用 F7 或右键单击来执行此操作,但是当我与同事共享项目时,它就成了问题。

有人知道如何避免这种行为吗?也许是类属性!?

最佳答案

作为一个选项,在文件的开头添加一个由 [DesignerCategory("")] 装饰的虚拟类。这将 DesignerCategory 的行为限制为设计器尝试加载的第一个类。

不优雅但工作:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WindowsFormsApplication1
{
    [System.ComponentModel.DesignerCategory("")]
    public class Dummy { }

    public partial class Form1
    {
    }
}

关于c# - 防止 Visual Studio 作为设计器加载自定义分部类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40296304/

相关文章:

c# - DataGridView 中的计算列绑定(bind)到一个对象

c# - 获取基本类型的所有最后后代?

c# - 如何从代码隐藏动态添加 html 选择控件?

c# - 如何使用 ADB2C 实现身份验证端点

c# - 由于其保护级别而无法访问

c# - 构建最有效的查询发现如果日期范围在一个间隔内?

c# - 将调用动态重定向到不同的程序集?

c# - ContextMenuStrip 的不稳定行为

c# - WinForms - 表格大小错误

c# - 异步编程问题