动态Windows窗体控件创建 - 一般问题

时间:2011-06-07 19:49:26

标签: c# winforms powershell

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

作为一个例子,将有一个组合框(下拉列表)来选择一个参数,然后是一个文本字段来填充所选参数的值。

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

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

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

非常感谢任何帮助。

4 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:1)

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

答案 2 :(得分:1)

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

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

这是需要使用的datagridview对象。

答案 3 :(得分:0)

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