【问题标题】:Winform Templating System like ASP.NET MasterPage or MS Access SubFormWinform 模板系统,如 ASP.NET MasterPage 或 MS Access SubForm
【发布时间】:2009-08-02 10:53:14
【问题描述】:

是否存在类似于 ASP.NET Masterpage 或 MS Access SubForm 的 Winform 框架?

使用 MS Access SubForm,您可以像 ASP.NET Masterpage 一样进行操作。当必须创建大量复杂的表单时,使用 Winform 会浪费大量时间。您必须通过创建代码重复的代码生成或运行时动态表单来弥补,这要困难得多。

我在互联网上搜索过,但没有找到。

【问题讨论】:

    标签: c# vb.net winforms


    【解决方案1】:

    母版页最重要的是表单继承。它是常规的类继承,但也受 Designer 支持。试试看:

    1) 添加带有确定和取消按钮的表单,构建项目(必不可少)

    2) 选择 Project、Add new item、Windows,然后选择 Inherited Form 模板。从步骤 1) 中选择表单作为基本表单。添加一些控件。

    3) 重复步骤 2) 几次

    4) 制作一些按钮来显示表单、构建和测试

    5) 从 1) 返回 Form 并更改一些内容(背景),再次运行


    您的另一个工具是 UserControls,它们的工作原理与 ASP.NET 中的相同。您可以像开发表单一样开发它们并将它们应用为控件。

    【讨论】:

      【解决方案2】:

      您可以将表单添加到表单或表单的面板中。

      public Form1()
      {
          InitializeComponent();
      
          Form2 embeddedForm = new Form2();
          embeddedForm.TopLevel = false;
          Controls.Add(embeddedForm);
          embeddedForm.Show();
      }
      

      您需要将FormBorderStyle 设置为None,除非您想在表单中拥有一个实际可移动的表单。

      发帖时我有点着急,但 Henk 是对的。您应该考虑为此创建一个用户控件。不要与自定义控件混淆,后者适用于您需要自己绘制而不是使用标准 Windows 控件集合的情况。

      【讨论】:

      • 最好为此使用 UsetrControl - 这是为此而设计的。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-24
      • 1970-01-01
      • 1970-01-01
      • 2014-12-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多