gpt4 book ai didi

c# - 是否可以在解决方案资源管理器中看不到窗体图标的情况下使用 C# 部分 WinForm 类文件?

转载 作者:太空宇宙 更新时间:2023-11-03 23:27:45 25 4
gpt4 key购买 nike

我有一个实用程序 VS 2013 Winform 应用程序,它由一个 TabControl 和大约六个标签页组成。大多数选项卡用于以某种方式编辑表格数据。

我创建了多个 .cs 文件,将 Form 分成多个部分类,这些类具有对该选项卡上控件的特定事件支持。

事件调用的功能在项目其他地方的类中。

这至少通过表单类的文件让我很好地分离了关注点。与在主表单文件中使用#regions 相比,我更喜欢这样做。

缺点是这些文件中的每一个都有一个表单图标并且看起来像一个单独的表单,这使得在这个项目中更难找到另一个表单。感觉就像代码的味道。

是否有更好的方法将其拆分并仍然能够使用设计器来布局标签页?

最佳答案

这不会“删除表单图标”,但可以帮助您组织代码。

您可以做的是将所有额外的部分类文件嵌套在单一的原始形式下。

因此,我从一个带有 Form1 的基本表单应用程序开始,然后在文件 Form1_button.cs 中添加了一个额外的部分类以包含一些额外的代码,并得到我认为与您目前的情况类似:

Before nesting

然后我卸载项目,并在 .csproj 文件中进行以下编辑。我找到此文件的条目:

    <Compile Include="Form1_button.cs">
<SubType>Form</SubType>
</Compile>

并添加一个 DependentUpon 元素:

    <Compile Include="Form1_button.cs">
<DependentUpon>Form1.cs</DependentUpon>
<SubType>Form</SubType>
</Compile>

然后重新加载项目:

enter image description here

这样,您使用的是部分类,但它们都按层次结构组织在一个“表单图标”下,当然,现在应该很容易找到您引用的其他表单,因为应该只有解决方案资源管理器中的两个表单节点。

关于c# - 是否可以在解决方案资源管理器中看不到窗体图标的情况下使用 C# 部分 WinForm 类文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33303004/

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