【问题标题】:how to access form controls from another class如何从另一个类访问表单控件
【发布时间】:2019-09-23 16:42:21
【问题描述】:

如何使用来自另一个类的表单中的每个控件? 因此,作为示例,我可以在课堂上使用 txtName.text 对其进行编辑,并对表单中的每个控件执行此操作

【问题讨论】:

  • 这里的目标是什么?为什么不能直接使用Form本身?您能否发布更详细的设置说明?除非您想使用 Controller 类型的类。已经有为此构建的 MV** 框架。

标签: c# winforms oop


【解决方案1】:

如果我的理解是正确的意思。你想从另一个类控制你的表单控件对象 1.您可以通过构造函数将表单对象传递给另一个类(Form this) 2.使用MVP模式。购买创建控件作为mainform中的属性并为该表单创建接口并将相同的接口传递给另一个需要控制的类

【讨论】:

    【解决方案2】:

    这些控件应该只能从 UI 类访问。不这样做是不好的做法。

    您可以创建属性来更改文本或其他内容。最好的选择是 MVVM 模式

    【讨论】:

      【解决方案3】:

      这不是一个好的设计,但可以做到。

      将控件上的访问修饰符更改为Public。然后,您将能够从任何有权访问您的 Form 实例的对象中引用它们。

      这可以通过在设计模式中选择 Control 并在属性面板中将 Modifiers 更改为 Public 来完成。

      【讨论】:

        猜你喜欢
        • 2016-05-06
        • 2011-06-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-12-09
        • 2013-03-20
        相关资源
        最近更新 更多