Ich möchte einen Index eines ausgewählten RadioButton in RadioGroup finden. Ich angebracht nächste einzelne Methode zu jeder RadioButton- in der Gruppe:Erhalte den Index eines ausgewählten RadioButtons in radioGroup
private void radio_button_CheckedChanged(object sender, EventArgs e){
if (sender.GetType() != typeof(RadioButton)) return;
if (((RadioButton)sender).Checked){
int ndx = my_radio_group.Controls.IndexOf((Control)sender);
// change something based on the ndx
}
}
Es ist mir wichtig, dass niedrigerer radiobutton muss niedrigen Index, beginnend bei Null. Und es scheint zu funktionieren, aber ich bin mir nicht sicher, ob das eine gute Lösung ist. Vielleicht gibt es mehr betufilul Weg, um das Gleiche zu tun.
private void radioButtons_CheckedChanged(object sender, EventArgs e)
{
RadioButton rb = sender as RadioButton;
if (rb.Checked)
{
Console.WriteLine(rb.Text);
}
}
von Indizes in der Controls-Auflistung seiner Parent
sind hoch flüchtigen:
so etwas http://stackoverflow.com/questions/17082551/getting-the-index-of-the-selected-radiobutton-in-a-group –
Was bist du? Quelle: Winforms, WPF, ASP ..? __Always__ kennzeichnen Sie Ihre Frage korrekt. – TaW
Ich habe es immer vorgezogen, die "value" -Eigenschaft des Radioknopfs zu verwenden, anstatt ihren Index in der Gruppe. Auf diese Weise können Sie die Reihenfolge ändern, neue Elemente einfügen und müssen den Code nicht nachträglich ändern (außer, um mit der Logik der neuen Optionen umzugehen). –