私の質問は、一般的にマルチフォームプログラムを持つことが許され、維持可能であるということです。より具体的にはC#では、ボタンを別のフォームに移動させることをお勧めします(各ボタンは別のクラスにあります)。次に例を示します。 (この例では、私はプログラマは、私がウェブから情報を収集し、ページからページへ移動して、クイックリファレンスのためのアプリケーションの上に置く必要があるアプリケーションを、参照作成)C#マルチフォームコーディングの練習
メインフォーム:
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();
}
}
}
(DIFFERENT CLASS IN)第二形式:
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();
}
}
}
これは良い方法ではありません場合は、より良い方法が何であるかを答えることができ、タブコントロールがより良い方法である、または表示するためにパネルを使用し、アプリケーションの新しいコンテンツを隠す?
を助ける私を願っています。それは本当にあなたが作成しようとしているプログラムをdepents。あなたが試みることができるものは、VisualStudioのようなドッキング可能なウィンドウです:http://dockpanelsuite.com/。 –
@TimonPostしかし、今後のメンテナンス性の観点からは、すべてのボタンが別のクラスにあり、同じボタンを別のフォームにマッピングすることをお勧めしますか?コメントありがとうございました。 – Atlas
私は長い時間前にusercontrolでパネルを使用しようとしました。イベントハンドラに注意する必要があります。さもなければメモリがなくなります。私にとっては、タブ付きのドキュメントではるかにクリーンですが、クリーンなコードでは、各タブごとに異なるクラスを作成しようとします。 –