グループボックスにはラジオボタンが含まれています。
o男性
o女性
私は自分のコードにラジオボタンの選択された値を取得し、それを文字列型変数にコピーしてください。
ありがとう
Winフォームの場合:
ラジオボタンから値を取得するには(テキストではなく値が必要であると想定)、Checkedプロパティを取得します。
string value = "";
bool isChecked = radioButton1.Checked;
if(isChecked )
value=radioButton1.Text;
else
value=radioButton2.Text;
Webフォームの場合:
<asp:RadioButtonList ID="rdoPriceRange" runat="server" RepeatLayout="Flow">
<asp:ListItem Value="Male">Male</asp:ListItem>
<asp:ListItem Value="Female">Female</asp:ListItem>
</asp:RadioButtonList>
そしてCS-いくつかのボタンクリックで
string value=rdoPriceRange.SelectedItem.Value.ToString();
2つある場合は1つを確認する必要があります
if(rbMale.Checked)
{
}
else
{
}
2つ以上の場合は、すべてのチェックボックスをオンにする必要があります
if(rb1.Checked)
{
}
else if(rb2.Checked)
{
}
else if(rb3.Checked)
{
}
ラジオボタンに共通イベントを使用することもできます。また、 Tag
プロパティを使用して文字列に情報を渡すか、文字列を保持する場合はTextプロパティを使用できますRadioButtonのテキストと同じ値。
このようなもの。
private void radioButton_CheckedChanged(object sender, EventArgs e)
{
if (((RadioButton)sender).Checked == true)
sex = ((RadioButton)sender).Tag.ToString();
}
上記の共通イベントを使用するとうまく機能し、次のように共通イベントを設定できることがわかりました。
private void checkChanged(object sender, EventArgs e)
{
foreach (RadioButton r in yourPanel.Controls)
{
if (r.Checked)
textBox.Text = r.Text;
}
}
もちろん、使用するパネルに他のコントロールを配置することはできませんが、すべてのラジオボタンに個別のパネルがある場合(グループボックス内でサブパネルを使用する場合や、整理したい場合など)あなたのコントロール)
別の方法は、enumおよび標準のRadioButtonを拡張するコンポーネントクラスを使用することです。
public enum Genders
{
Male,
Female
}
[ToolboxBitmap(typeof(RadioButton))]
public partial class GenderRadioButton : RadioButton
{
public GenderRadioButton()
{
InitializeComponent();
}
public GenderRadioButton (IContainer container)
{
container.Add(this);
InitializeComponent();
}
public Genders gender{ get; set; }
}
GenderRadioButtonsに共通のイベントハンドラーを使用する
private void Gender_CheckedChanged(Object sender, EventArgs e)
{
if (((RadioButton)sender).Checked)
{
//get selected value
Genders myGender = ((GenderRadioButton)sender).Gender;
//get the name of the enum value
string GenderName = Enum.GetName(typeof(Genders ), myGender);
//do any work required when you change gender
switch (myGender)
{
case Genders.Male:
break;
case Genders.Female:
break;
default:
break;
}
}
}
Windowsフォーム
チェックするラジオボタンが複数ある場合、この機能は非常にコンパクトです。
/// <summary>
/// Get the value of the radio button that is checked.
/// </summary>
/// <param name="buttons">The radio buttons to look through</param>
/// <returns>The name of the radio button that is checked</returns>
public static string GetCheckedRadioButton(params RadioButton[] radioButtons)
{
// Look at each button, returning the text of the one that is checked.
foreach (RadioButton button in radioButtons)
{
if (button.Checked)
return button.Text;
}
return null;
}