代码之家  ›  专栏  ›  技术社区  ›  Pat

从类生成GUI(winforms或wpf)的工具

  •  4
  • Pat  · 技术社区  · 15 年前

    假设我们有一个类

    public class Doer 
    {
        public int Timeout {get;set;}
        public string DoIt(string input)
        {
            string toReturn;
            // Do something that involves a Timeout
            return toReturn;
        }
    }
    

    有没有一个工具可以为这个类的原型创建一个窗体或控件?图形用户界面可能有一个带有“超时”标签的NumericUpDown控件和一个带有“输入”文本框的GroupBox,以及一个带有调用 Doer.DoIt 具有的文本属性 input 并将响应放入另一个文本框。

    GUI with a NumericUpDown control with a label of "Timeout" and a GroupBox with a TextBox for "input" and a button labeled "DoIt" with an eventhandler that calls Doer.DoIt with the Text property of the input TextBox and puts the response in another TextBox.

    2 回复  |  直到 13 年前
        2
  •  0
  •   Pat    14 年前

    看起来很像 Naked Objects 是研究的好途径。( Hanselminutes podcast )

    Briefly :

    定义了裸对象模式 根据三个原则:

    1. 所有业务逻辑都应该封装到域对象中。 这一原则并非裸体的独有。 对象:它只是一个强大的 承诺封装。
    2. 用户界面应该是域的直接表示 对象,包含所有用户操作 明确地包括创造或 检索域对象和/或 在这些对象上调用方法。 这一原则也不是唯一的 裸露的物体:它只是一个特定的 面向对象的解释 用户界面(ooui)。原版 裸体图案中的想法 它们的结合 第二,形成第三个原则:
    3. 用户界面应100%自动创建自 域对象的定义。这个 可以用几个不同的 技术,包括源代码 生成;实现 迄今为止,裸物体图案 喜欢反射技术。 裸物模式是第一个 正式描述在理查德·保森的 博士论文 1 其中包括 全面调查各种 前因与启示 例如,模式包括 吗啡用户界面。裸露物体 通常与 模型视图控制器模式。 但是,发布的版本 Pawson的论文(见参考文献) 包含一个前言 Reenskaug,他首先制定了 模型视图控制器模式, 暗示裸体物体是 更接近于 模型视图控制器比 后续解释和 实施。