【问题标题】:Dynamic Windows Form Control Creation - General Question动态 Windows 窗体控件创建 - 一般问题
【发布时间】:2011-09-10 09:04:58
【问题描述】:

我正在使用 PowerShell 中的 GUI 并尝试制作表单,以便在构建表单后,用户可以与表单的一部分(+/- 按钮)进行交互以动态添加一组控件到现有集合下方的表单。

例如,将有一个组合框(下拉)来选择一个参数,然后是一个文本字段来填写所选参数的值。

我正在寻找一种在用户单击加号按钮时将该组控件动态添加到表单的方法。我目前的尝试失败了。我尝试将控件固定在 TableLayoutPanel 和 Panel 对象中,但似乎无法让项目首先出现,然后以某种顺序出现。是否有一个我可以将控件固定到的 GUI 对象,它只会自动转储现有控件下方的下一行控件,还是我必须从停靠的父项中计算出计算并偏移 Y 值?

有谁知道支持此类添加的 PowerShell 可访问 Windows 窗体控件?

我的一个尝试是在这里:.NET 4 (WinForms) Dynamic Form Control Creation in Powershell

非常感谢任何帮助。

【问题讨论】:

    标签: c# winforms powershell


    【解决方案1】:

    也许您可以使用 FlowLayoutPanel。 Here 是在 Powershell 中使用 FlowLayoutPanel 的示例脚本

    【讨论】:

      【解决方案2】:

      它不是 Winforms,但 Codeplex 上有一个名为 ShowUI 的新模块,它使您能够在 PowerShell 中创建基于 WPF 的 UI。看看http://showui.codeplex.com。上面有一些关于使用网格控件和自动布局的示例,如果您愿意跳入 WPF,我认为它们可以满足您的需求。

      【讨论】:

      • 创建 UI 不是问题,动态生成表单控件(以及我对它的理解)才是问题。我有一个现有的 gui,我只是想扩展它。
      【解决方案3】:

      从 Microsoft PowerShell 论坛版主那里得到答案:

      http://social.technet.microsoft.com/Forums/en-US/ITCG/thread/b2c8abeb-3ae6-4936-9bef-a50a79fdff45/

      需要用到的是datagridview对象。

      【讨论】:

        【解决方案4】:

        你不能简单地构建你的表单(例如使用 Sapiens 免费编辑器工具),所有控件都是不可见的,然后根据用户的选择让它们可见吗?

        【讨论】:

        • 我使用的是 Sapien 的 PrimalScript 2011 Studio——这不是问题所在。我试图让 gui 从特定对象中获取所有属性,然后动态构建一个由组合框和文本框组成的行。组合框包含返回的所有属性,因此用户可以选择属性,然后填写值以构建命令行。然后,他们可以点击 + 按钮,该按钮会动态生成另一行(在前一行下方),这样他们就可以填写另一个属性/文本框组合。
        猜你喜欢
        • 2013-11-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-03-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多