gpt4 book ai didi

c# - 部分形式类 C# - 仅显示类的代码 View

转载 作者:行者123 更新时间:2023-11-30 16:14:22 25 4
gpt4 key购买 nike

我在 C# 中有一个 Blank Forms 项目。

我想将函数和事件分离到表单类的不同代码文件中。为了在它变大并且多人在 CodeControl 上使用它时使其更易于管理。

所以我创造了;

  • Form1.Functions.cs
  • Form1.Events.cs

这些额外的部分类都包含

namespace MyLargeProject
{
public partial class Form1
{

}

}

我还更改了 csproj 文件,以便 VS IDE 使它们出现在 Sotion Explorer 中。

例子

<Compile Include="Forms\Form1.Functions.cs">
<DependentUpon>Form1.cs</DependentUpon>
<SubType>Form</SubType>
</Compile>

所以程序编译了,一切看起来都很好,除了当我从解决方案资源管理器打开文件时,它打开了一个空白的表单设计器,而不是代码。

我希望 VS 仅将此类作为代码文件打开,以限制 Form1.Designer.cs 文件的问题。

我也试过删除子类型

  <SubType>Form</SubType>

但 Visual Studio 不断将其添加回 csproj 文件。

最佳答案

如评论中所述,Visual Studio 将在代码编辑器中而不是在表单设计器中打开任何以 .Designer.cs 结尾的文件。利用这一点,在表单设计器中不打开表单的一个好的解决方案是命名包含以 .Designer.cs 结尾的类的文件。

注意:我会说这并不优雅。我发现有一个名为 Form1.Designer.cs 的文件并且没有设计器是违反直觉的。此外,如果表单最初是使用表单设计器创建的,则这将需要合并 Form1.csForm1.Designer.cs,这在 Visual Studio 中可能会出现问题。


我的原始答案

请按照以下步骤操作:

1) 确保设计器已关闭。

2) 修改您的 Form1.Designer.cs 并添加带有空字符串 "" 的属性 DesignerCategory(除了“Designer”、“Form”或“Component”也适用 - 不区分大小写):

namespace MyLargeProject
{
[System.ComponentModel.DesignerCategory("")]
public partial class Form1
{
// ...
}
}

3) 卸载您的项目。

4) 重新加载您的项目。

5) 注意设计师没有出现。

6) 尽情享受吧!

注意:在 Visual Studio 2012 上测试,但基于 discussion thread from 2005 .

关于c# - 部分形式类 C# - 仅显示类的代码 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20796628/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com