【问题标题】:Why would some controls be public and others private?为什么有些控制是公开的而有些是私有的?
【发布时间】:2013-02-22 22:41:21
【问题描述】:

我注意到这个在旧版 *.cs 文件中添加的 Windows 代码(在出现将此类从代码文件中逐出的部分类之前;具体来说,这是在旧的 Windows CE 项目中):

private System.Windows.Forms.Label lblDescription;
public System.Windows.Forms.TextBox txtItemDollar;

为什么有些控制是私有的而有些是公开的?区别不在于控件的类型,因为我看到的 TextBox 和 Label 在某些情况下是私有的,而在其他情况下是公开的。

我猜这有点学术性;更相关的问题是:通过使用一个可见性说明符或另一个,这些控件有什么影响或重要性?

【问题讨论】:

  • 这是某种复合控制吗?如果是这样,答案是因为他们不称职,或者无法用 C# 表达他们想要的东西。
  • 不,我认为这是 Visual Studio 自己添加的代码;我只是不明白为什么有些被标记为公开而有些被标记为私有。也许其中一位编码员出于某种原因更改了其中一些,但我不知道他们为什么会这样做(如果是这样的话,我对它的工作感到有些惊讶)。

标签: textbox label visibility private-members partial-classes


【解决方案1】:

我可以理解对有效复合组件的私有控制。 那只是您想在标签中显示某些内容,但您不想提供弄乱它、更改字体、移动它等的工具。

公众成员,那是错误的。 Someoojah.txtItemDollar.Dispose; 或=空; 如果在那之后它没有倒在一大堆中,我会感到非常惊讶。它违反了许多基本的设计原则,这是不正确的。

虽然不能说我很惊讶。早期的 .net 遭受了许多非常糟糕的实现,可能需要满足销售期限。

【讨论】:

    猜你喜欢
    • 2017-11-09
    • 1970-01-01
    • 1970-01-01
    • 2019-09-27
    • 1970-01-01
    • 1970-01-01
    • 2020-07-31
    • 2023-04-04
    • 2014-08-26
    相关资源
    最近更新 更多