【发布时间】:2009-08-02 10:53:14
【问题描述】:
是否存在类似于 ASP.NET Masterpage 或 MS Access SubForm 的 Winform 框架?
使用 MS Access SubForm,您可以像 ASP.NET Masterpage 一样进行操作。当必须创建大量复杂的表单时,使用 Winform 会浪费大量时间。您必须通过创建代码重复的代码生成或运行时动态表单来弥补,这要困难得多。
我在互联网上搜索过,但没有找到。
【问题讨论】:
是否存在类似于 ASP.NET Masterpage 或 MS Access SubForm 的 Winform 框架?
使用 MS Access SubForm,您可以像 ASP.NET Masterpage 一样进行操作。当必须创建大量复杂的表单时,使用 Winform 会浪费大量时间。您必须通过创建代码重复的代码生成或运行时动态表单来弥补,这要困难得多。
我在互联网上搜索过,但没有找到。
【问题讨论】:
母版页最重要的是表单继承。它是常规的类继承,但也受 Designer 支持。试试看:
1) 添加带有确定和取消按钮的表单,构建项目(必不可少)
2) 选择 Project、Add new item、Windows,然后选择 Inherited Form 模板。从步骤 1) 中选择表单作为基本表单。添加一些控件。
3) 重复步骤 2) 几次
4) 制作一些按钮来显示表单、构建和测试
5) 从 1) 返回 Form 并更改一些内容(背景),再次运行
您的另一个工具是 UserControls,它们的工作原理与 ASP.NET 中的相同。您可以像开发表单一样开发它们并将它们应用为控件。
【讨论】:
您可以将表单添加到表单或表单的面板中。
public Form1()
{
InitializeComponent();
Form2 embeddedForm = new Form2();
embeddedForm.TopLevel = false;
Controls.Add(embeddedForm);
embeddedForm.Show();
}
您需要将FormBorderStyle 设置为None,除非您想在表单中拥有一个实际可移动的表单。
发帖时我有点着急,但 Henk 是对的。您应该考虑为此创建一个用户控件。不要与自定义控件混淆,后者适用于您需要自己绘制而不是使用标准 Windows 控件集合的情况。
【讨论】: