首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >把大班级分成小班级

把大班级分成小班级
EN

Stack Overflow用户
提问于 2012-07-27 23:22:43
回答 2查看 1.1K关注 0票数 2

我在将我的主窗体/类拆分成更小的部分时遇到了问题。

主要原因是因为控制事件。我不知道如何使类变得更小,因为它由20个控件(至少)组成,每个控件至少有3个事件。

甚至我实际上设法将一些方法移到一个单独的类中,它们需要将控件作为方法参数发送,以便它们能够按照最初的预期工作。

一个小的例子是

代码语言:javascript
复制
public static bool GroupContainsSnippet(TreeView tree, string group, string snippetName)
{
    bool result = false;

    if (tree.Nodes[group] != null)
    {
        result = tree.Nodes[group].Nodes.ContainsKey(snippetName);
    }

    return result;
}

出于某种原因,为了做这样的事情而不得不发送控件感觉很奇怪,所以我希望有一种更清晰的方法。

提前谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-27 23:55:41

使用您的示例,我将创建自己的TreeView派生类,例如MyTreeView,并尽可能多地放入有意义的TreeView代码。例如,

代码语言:javascript
复制
public class MyTreeView : TreeView
{
    public bool GroupContainsSnippet(string group, string snippetName)
    {
        return Nodes[group] != null && Nodes[group].Nodes.ContainsKey(snippetName);
    }    
}

这是一种更面向对象的方法,因为它将您特定的TreeView行为封装到它自己的类中。

票数 2
EN

Stack Overflow用户

发布于 2012-07-27 23:34:18

如果你觉得你的类太大了,你有没有研究过部分类?你的类的大小不会改变,但它会改变你在任何时候必须处理的一个类文件中的代码量。

MSDN Link

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

https://stackoverflow.com/questions/11690869

复制
相关文章

相似问题

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