私はC#が初めてで、助けが必要です。
私がこれまでに持っているのは、C# で作成した 8 つの Windows フォームのセットです。これらのフォームには、テキスト ボックス、ラベル、ラジオ ボタンなどの基本的なものがあります。フォーム (セレクタ フォームと呼ばれます) を使用して、他の 8 つのフォームのいずれかを選択できます。いつでも、セレクターフォームを他のウィンドウの上に表示し、8 つのラジオボタン (または通常のボタンは関係ありません) を配置したいと考えています。ボタンの 1 つがクリックされると、現在のフォーム (セレクタ フォームではない) が消え、新しいフォームが表示されます。ボタンの名前は、表示される新しいフォームの名前になります。
いくつかの例を見てきましたが、これまでのコードは次のとおりです。
void Button1Click(object sender, EventArgs e)
{
//this.Hide();
var form1 = new CASII();
form1.Closed += (sender1, args) => this.Close();
form1.Show();
}
void Button2Click(object sender, EventArgs e)
{
// this.Hide();
var form2 = new CCARAdmin();
form2.Closed += (sender1, args) => this.Close();
form2.Show();
//Application.Run(new CCARAdmin());
}
私が抱えている問題は、セレクターフォームを非表示にしたくないことです。これは、開いている他のフォームを特定して閉じてから別のフォームを開く方法がわかりません。
プログラムを開始すると、ロジックは次のようになります。 セレクタ フォームの表示 ボタンがセレクタ フォームでクリックされると、セレクタ フォームを一番上に保持し、ボタンの名前で他のフォームを表示します。Selector フォームで別のボタンをクリックすると、開いていた前のフォーム (Selector フォームではない) を閉じ、ボタンの名前に対応する新しいフォームを開きます。Selector フォームを一番上に置きます。Selector フォームが閉じると、アプリケーションが停止します。