【问题标题】:Workflow RuleSetDialog工作流规则集对话框
【发布时间】:2008-10-16 06:58:03
【问题描述】:

我们能否以某种方式扩展 RuleSetDialog 类并在我们的 Windows 应用程序中托管?

【问题讨论】:

    标签: workflow workflow-foundation rules


    【解决方案1】:
    【解决方案2】:

    虽然确实不完全支持扩展对话框,但您可以进行一些自定义。在之前的项目中,我能够在运行时隐藏和重新排列一些对话框控件。

    var dialog = new RuleSetDialog(activityType, null, ruleset);
    dialog.Controls["headerTextLabel"].Visible = false;
    dialog.Controls["pictureBoxHeader"].Visible = false;
    
    ...
    
    var ruleGroupBox = dialog.Controls["ruleGroupBox"];
    ruleGroupbox.Top -= 46;
    
    ... etc.
    

    启动反射器并四处寻找。没有什么可以阻止您隐藏和移动控件来自定义它。您甚至可以将控件添加到组框,重新连接按钮处理程序,或者根据自己的喜好完全重新排列表单。有点手动,不过还是可以的。

    【讨论】:

      【解决方案3】:

      您可以通过一点技巧完全做到这一点:将智能文本框内部控件与 System.Workflow.Activities.Rules.Design 命名空间分开......然后您几乎可以用它做任何事情。分离在这里通常意味着:创建一个包装器(恰好是一个文本框控件的适配器),在解决一些依赖关系之后实例化(最坏的情况是您可以隐藏原始规则编辑器、解析器等...)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-01-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-04-02
        相关资源
        最近更新 更多