My question is, in general is it allowable and maintainable to have a multi-form program. More specifically in C# is it good practice to have a button go to another form(each button would be in a separate class). Here is an example: (In this example I create a programmers reference application, where I need to go from page to page gathering information from the web and put it on an application for quick reference)
Main form:
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();
}
}
}
Second form(IN A DIFFERENT CLASS):
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();
}
}
}
If this is not a good way can you answer what is a better way, is tab control a better way, or using panels to show and hide new content in an application?