C#多表格编码实践

时间:2017-04-01 21:03:31

标签: c# maintainability

我的问题是,一般来说,拥有一个多表格程序是可以允许的和可维护的。更具体地说,在C#中,将按钮转到另一个表单是很好的做法(每个按钮都在一个单独的类中)。这是一个例子: (在这个例子中,我创建了一个程序员参考应用程序,我需要从一个页面收集来自Web的信息并将其放在一个应用程序上以供快速参考)

主要形式:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace ProgramersReference
{
public partial class main : Form
{
    public main()
    {
        InitializeComponent();
    }

    //About button click
    private void btnAbout_Click(object sender, EventArgs e)
    {
        MessageBox.Show("Author: anon \n"
            +"Version Number: 00.00.01 \n"
            ,"Information");    //Version Key quickreference: 00(high profile change).00(Medium profile change).00(low profile change)
    }

    private void btnWebsites_Click(object sender, EventArgs e)
    {
        websiteForm websiteFormObj = new websiteForm();
        websiteFormObj.Show();
    }
 }
}

第二种形式(不同类别):

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace ProgramersReference
{
  public partial class websiteForm : Form
   {
    public websiteForm()
    {
        InitializeComponent();
    }
   }
}

如果这不是一个好方法,你能回答什么是更好的方法,选项卡控制是一种更好的方法,还是使用面板来显示和隐藏应用程序中的新内容?

2 个答案:

答案 0 :(得分:2)

看看大项目。蒸汽是否为每个动作使用新窗口。 Visual Studio是否为每个操作使用了大量新窗口。这些都是使用不同页面的标签。如果这样做会变得非常混乱。

创建弹出窗口的原因是为了从用户那里获得一些输入。例如:

  1. 保存文件
  2. 打开文件
  3. 在Visual Studio中创建新类。
  4. 更改设置。
  5. 当程序想要输入一些而不会干扰主要布局和程序目标时,会创建所有这些弹出窗口。这些窗户也会快速关闭。

    因此,只有在用户提供输入后迅速消失时才会创建弹出窗口。并将程序的主要功能放在选项卡中。

答案 1 :(得分:1)

我同意Timon的一般说法,但它总是取决于你想要实现的目标。编程是一个创造性的过程,规则应被视为指导。如果您的应用程序更好地使用选项卡使用选项卡,如果它更好地与表单使用表单。如果您为客户编写此应用程序与他们讨论问题。至于最佳实践,我没有看到任何一个选项的问题。

希望我的随意帮助 丹尼