以编程方式创建表单

时间:2017-09-11 07:08:04

标签: c# forms winforms

我想构建一个程序来填充模板,将其保存为特定于应用程序的格式并将其发送到远程服务器。

将有多个模板,每个模板都有不同数量的字段要填充。此外,这些领域的人类可识别名称也将彼此不同。

此外,该程序允许用户填写的各种模板在编程时不固定。用户认为必要时会有其他模板。

目前,我可以加载一个模板,解析它以查看要填充的必要字段,从模拟数据填充它们并保存它们。

每次选择不同的模板时,如何动态创建包含必要字段名称的用户表单,以便用户可以手动输入数据?

2 个答案:

答案 0 :(得分:0)

在运行时创建表单:

Form newForm = new Form();

要向表单添加控件,例如,文本框:

TextBox text = new TextBox();

newForm.Controls.Add(text);

您还可以将控件添加到其他容器,例如:

GroupBox groupBox = new GroupBox();

groupBox.Controls.Add(text);

newForm.Controls.Add(groupBox);

现在,组合框将添加到包含文本框的表单中。

答案 1 :(得分:0)

尝试这个小程序:

var form = new Form();

var label = new Label() { Text = "Name", Location = new Point(10, 10), AutoSize = true };
var textbox = new TextBox() { Location = new Point(60, 10) };
var button = new Button() { Text = "Save", Location = new Point(10, 35) };

button.Click += (s, e) => MessageBox.Show("You typed " + textbox.Text);

form.Controls.AddRange(new Control[] { label, textbox, button });

form.Show();