Я вижу две проблемы в коде. Первый - с назначением обработчика событию Click
. Чтобы исправить это, вам нужно переместить строку
RB.Click += RB_Click;
внутрь foreach
l oop. В его нынешнем виде ваш код добавляет обработчик событий только для последнего созданного RadioButton
, а не для каждого из созданных вами.
Во-вторых, вы также обнаружите проблему в RB_Click
обработчике событий . Чтобы убедиться, что выбранный RadioButton обновлен, добавьте эту строку кода в foreach
l oop:
RB.Tag = C1;
, а затем измените обработчик RB_Click
на:
private void RB_Click(object sender, EventArgs e)
{
RadioButton thisRadioButton = sender as RadioButton;
if (thisRadioButton != null)
{
HandleClients MSGS = thisRadioButton.Tag as HandleClients;
TXB_MSGS.Text = string.Empty;
TXB_MSGS.Text += String.Join (Environment.NewLine, MSGS.ClientMessages);
}
}
Этот код теперь будет работать только с RadioButton
, по которому щелкнули.