如何将 Windows 表单单选按钮和文本框分组?
How do I group Windows Form radio buttons and textboxes?
我有 10 个文本框控件和 10 个单选按钮控件,我有类似的代码,但是我可以为文本框和单选按钮创建一个组吗?
代码:
if (chbx_Ext_tit1.Checked == true)
{
FileStream fs1 = new FileStream(@"c:\LigueStats\data\TXT\Nom_joueur.txt", FileMode.Create);
StreamWriter fichier1 = new StreamWriter(fs1);
fichier1.Write(txt_ext_tit_nom1.Text);
fichier1.Close();
//Numéro
FileStream fs2 = new FileStream(@"c:\LigueStats\data\TXT\Num_joueur.txt", FileMode.Create);
StreamWriter fichier2 = new StreamWriter(fs2);
fichier2.Write(txt_ext_tit_num1.Text);
fichier2.Close();
}
//exporter joueur 2 Titulaire
if (chbx_Ext_tit2.Checked == true)
{
FileStream fs1 = new FileStream(@"c:\LigueStats\data\TXT\Nom_joueur.txt", FileMode.Create);
StreamWriter fichier1 = new StreamWriter(fs1);
fichier1.Write(txt_ext_tit_nom2.Text);
fichier1.Close();
//Numéro
FileStream fs2 = new FileStream(@"c:\LigueStats\data\TXT\Num_joueur.txt", FileMode.Create);
StreamWriter fichier2 = new StreamWriter(fs2);
fichier2.Write(txt_ext_tit_num2.Text);
fichier2.Close();
}
您可以使用 "GroupBox" 控件并将所有控件放在那里。或者,您可以创建自定义控件来对控件进行分组。
你可以写一个有3个(或更多)参数的方法,并且只传递控件。
public void Foo()
{
DoWork(chbx_Ext_tit1, txt_ext_tit_nom1, txt_ext_tit_num1);
DoWork(chbx_Ext_tit2, txt_ext_tit_nom2, txt_ext_tit_num2);
}
public void DoWork(CheckBox checkbox, TextBox textbox1, TextBox textbox2)
{
if (checkbox.Checked == true)
{
FileStream fs1 = new FileStream(@"c:\LigueStats\data\TXT\Nom_joueur.txt", FileMode.Create);
StreamWriter fichier1 = new StreamWriter(fs1);
fichier1.Write(textbox1.Text);
fichier1.Close();
//Numéro
FileStream fs2 = new FileStream(@"c:\LigueStats\data\TXT\Num_joueur.txt", FileMode.Create);
StreamWriter fichier2 = new StreamWriter(fs2);
fichier2.Write(textbox2.Text);
fichier2.Close();
}
}
或者更好,只需传递您需要的值:
public void Foo()
{
DoWork(chbx_Ext_tit1.Checked, txt_ext_tit_nom1.Text, txt_ext_tit_num1.Text);
DoWork(chbx_Ext_tit2.Checked, txt_ext_tit_nom2.Text, txt_ext_tit_num2.Text);
}
public void DoWork(bool isChecked, string text1, string text2)
{
if (isChecked)
{
FileStream fs1 = new FileStream(@"c:\LigueStats\data\TXT\Nom_joueur.txt", FileMode.Create);
StreamWriter fichier1 = new StreamWriter(fs1);
fichier1.Write(text1);
fichier1.Close();
//Numéro
FileStream fs2 = new FileStream(@"c:\LigueStats\data\TXT\Num_joueur.txt", FileMode.Create);
StreamWriter fichier2 = new StreamWriter(fs2);
fichier2.Write(text2);
fichier2.Close();
}
}
同意杰根的观点。但不必只使用 GroupBox 进行分组。
主要概念是要对几个控件进行分组,您可以使用任何容器控件。
我有 10 个文本框控件和 10 个单选按钮控件,我有类似的代码,但是我可以为文本框和单选按钮创建一个组吗?
代码:
if (chbx_Ext_tit1.Checked == true)
{
FileStream fs1 = new FileStream(@"c:\LigueStats\data\TXT\Nom_joueur.txt", FileMode.Create);
StreamWriter fichier1 = new StreamWriter(fs1);
fichier1.Write(txt_ext_tit_nom1.Text);
fichier1.Close();
//Numéro
FileStream fs2 = new FileStream(@"c:\LigueStats\data\TXT\Num_joueur.txt", FileMode.Create);
StreamWriter fichier2 = new StreamWriter(fs2);
fichier2.Write(txt_ext_tit_num1.Text);
fichier2.Close();
}
//exporter joueur 2 Titulaire
if (chbx_Ext_tit2.Checked == true)
{
FileStream fs1 = new FileStream(@"c:\LigueStats\data\TXT\Nom_joueur.txt", FileMode.Create);
StreamWriter fichier1 = new StreamWriter(fs1);
fichier1.Write(txt_ext_tit_nom2.Text);
fichier1.Close();
//Numéro
FileStream fs2 = new FileStream(@"c:\LigueStats\data\TXT\Num_joueur.txt", FileMode.Create);
StreamWriter fichier2 = new StreamWriter(fs2);
fichier2.Write(txt_ext_tit_num2.Text);
fichier2.Close();
}
您可以使用 "GroupBox" 控件并将所有控件放在那里。或者,您可以创建自定义控件来对控件进行分组。
你可以写一个有3个(或更多)参数的方法,并且只传递控件。
public void Foo()
{
DoWork(chbx_Ext_tit1, txt_ext_tit_nom1, txt_ext_tit_num1);
DoWork(chbx_Ext_tit2, txt_ext_tit_nom2, txt_ext_tit_num2);
}
public void DoWork(CheckBox checkbox, TextBox textbox1, TextBox textbox2)
{
if (checkbox.Checked == true)
{
FileStream fs1 = new FileStream(@"c:\LigueStats\data\TXT\Nom_joueur.txt", FileMode.Create);
StreamWriter fichier1 = new StreamWriter(fs1);
fichier1.Write(textbox1.Text);
fichier1.Close();
//Numéro
FileStream fs2 = new FileStream(@"c:\LigueStats\data\TXT\Num_joueur.txt", FileMode.Create);
StreamWriter fichier2 = new StreamWriter(fs2);
fichier2.Write(textbox2.Text);
fichier2.Close();
}
}
或者更好,只需传递您需要的值:
public void Foo()
{
DoWork(chbx_Ext_tit1.Checked, txt_ext_tit_nom1.Text, txt_ext_tit_num1.Text);
DoWork(chbx_Ext_tit2.Checked, txt_ext_tit_nom2.Text, txt_ext_tit_num2.Text);
}
public void DoWork(bool isChecked, string text1, string text2)
{
if (isChecked)
{
FileStream fs1 = new FileStream(@"c:\LigueStats\data\TXT\Nom_joueur.txt", FileMode.Create);
StreamWriter fichier1 = new StreamWriter(fs1);
fichier1.Write(text1);
fichier1.Close();
//Numéro
FileStream fs2 = new FileStream(@"c:\LigueStats\data\TXT\Num_joueur.txt", FileMode.Create);
StreamWriter fichier2 = new StreamWriter(fs2);
fichier2.Write(text2);
fichier2.Close();
}
}
同意杰根的观点。但不必只使用 GroupBox 进行分组。 主要概念是要对几个控件进行分组,您可以使用任何容器控件。